我在Access 2010中,正在嘗試爲以特定方式排序的查詢創建排名或行號字段。我試過Rank: DCount("id","[Query1]","id <= " & [id])
,但它忽略了我的查詢排序,因爲訂單不是作爲ID主鍵。SQL:排序查詢
SQL:排序查詢
回答
我已經看到了你的排序邏輯,並且似乎我設法通過創建一個附加查詢(Temp)和一個包含所有排序函數子產品並列的列來設計排名。此查詢的代碼應該是這樣的:
SELECT Table1.Code1,
Len(Mid([Code1] & "",1,IIf(InStr([Code1] & "","*")>0,InStr([Code1] & "","*")-1,Len([Table1].[Code1] & ""))))
& Mid([Code1] & "",1,IIf(InStr([Code1] & "","*")>0,InStr([Code1] & "","*")-1,Len([Table1].[Code1] & ""))) &
Val(Mid([Code1] & "",InStr([Code1] & "","*")+1)) &
CStr(Val(Mid([Code1] & "",InStr([Code1] & "","*")+1))) AS OrderCode1
FROM Table1
ORDER BY Len(Mid([Code1] & "",1,IIf(InStr([Code1] & "","*")>0,InStr([Code1] & "","*")-1,Len([Table1].[Code1] & "")))),
Mid([Code1] & "",1,IIf(InStr([Code1] & "","*")>0,InStr([Code1] & "","*")-1,Len([Table1].[Code1] & ""))),
Val(Mid([Code1] & "",InStr([Code1] & "","*")+1)),
CStr(Val(Mid([Code1] & "",InStr([Code1] & "","*")+1))), Table1.Code1;
後,如果您創建了這額外的一個查詢,並使用DCount
功能上的WHERE
參數「OrderCode1」列,你應該得到一個順序排名。就像這樣:
SELECT Temp.Code1, DCount("Code1","[Temp]","OrderCode1 <= '" & [OrderCode1] & "'") AS Rank
FROM Temp;
如果你仍然需要一個解決方案,你可以檢查它是否工作!
我的查詢有一個複雜的字符串排序。 [REF](http://stackoverflow.com/questions/12494240/sql-sort-and-filter)。我嘗試了以下'Rank:DCount(「Id」,「[qryMaterialSortLast]」,「Sort1 <=」&[Sort1]&「and Sort2 <='」&[Sort2]&「'and Sort3 <=」&[ Sort3])',但沒有爲一些工作。 – Rick
我曾試圖做類似排序的事情,但因爲它包含一個字符串而在第二個排序級別上很難。使用你的帖子,我想出了以下內容,對於我的字段進行了很好的排序,並且不需要在另一個查詢中使用DCount函數: 'OrderCode1:Len(Mid([Code1]&「」, InStr([Code1]&「」,「*」)> 0,InStr([Code1]&「」,「*」) - 1,Len([Code1]&「」))))&Mid([ Code1]&「」,1,IIf(InStr([Code1]&「」,「*」)> 0,InStr([Code1]&「」,「*」) - 1,Len([Code1]&「 ))&Len(CStr(Val(Mid([Code1]&「」,InStr([Code1]&「」,「*」)+ 1))))&CStr(Val(Mid([Code1]&「 「,InStr([Code1]&」「,」*「)+ 1)))' – Rick
我剛加了len()後面的星號。這樣它更好地排序 謝謝! – Rick
希望這有助於
SELECT ROW_NUMBER() OVER (ORDER BY OrderID) AS RowNo, OrderID FROM Orders
- 1. SQL查詢排序
- 2. SQL查詢排序
- 3. SQL查詢排序
- 4. 排序在SQl查詢
- 5. SQL子查詢排序
- 6. 排序在SQL查詢
- 7. 的Sql排序查詢
- 8. 通過SQL查詢排序
- 9. SQL查詢按組排序
- 10. SQL排序查詢問題
- 11. Sql查詢排序問題
- 12. 具有排序順序的SQL查詢
- 13. 排名SQL查詢
- 14. 按排序查詢指定的SQL排序順序
- 15. SQL查詢沒有排序正確
- 16. 排序愛可信sql查詢
- 17. 基於查詢排序的SQL行數?
- 18. 如何重新排序SQL查詢?
- 19. SQL查詢月份名稱排序
- 20. 用於排序的SQL選擇查詢
- 21. 按名稱排序sql查詢
- 22. 按頻率排序SQL查詢記錄
- 23. Sql Server的排序查詢結果
- 24. SQL查詢,按子串排序
- 25. SQL查詢:按字符長度排序?
- 26. 按日期排序的SQL查詢
- 27. SQL - 如何在UNION查詢中排序
- 28. SQL查詢重新排列列順序
- 29. SQL查詢的數據排序
- 30. SQL查詢排序日期時間
如何發佈數據的一小部分 - 只要剪切和粘貼,不要過分擔心佈局 - 以及你想要的順序上的一些注意事項? – Fionnuala