繁体   English   中英

Microsoft Access查询排序顺序

[英]Microsoft Access Query Sort Order

我对order by子句有疑问。 目的

像SSN一样分组

然后,我想按优先级列出。 1是最高优先级数字

询问

SELECT DRS_FILE.AGENCY, DRS_FILE.P1, DRS_FILE.FUND, DRS_FILE.ACCOUNT, DRS_FILE.LNAME, DRS_FILE.FNAME AS FNAME, DRS_FILE.SSN, DRS_FILE.PRIOR, DRS_FILE.BALDUE, DRS_FILE.BALDUE AS DRSBAL, DRS_FILE.FILL1, DRS_FILE.FILEDATE, DRS_FILE.FILL2
FROM DRS_FILE
ORDER BY DRS_FILE.SSN, DRS_FILE.P1;

但是,无论我处理多少查询,日期仍然是混乱的,请参阅下面的结果。

AGENCY     P1    FUND     LNAME     FNAME    SSN        PRIOR       FILEDATE    FILL2
6909       28    K        SWASEY    JOHN    999999999   051         190117 
2620       8     L        SWASEY    JOHN    999999999   052         190117

如果您注意到我在P1列中使用的是第二个by by子句,但该顺序不正确,好像优先级数字8应该高于28。有人可以帮我解决这个问题吗? 为什么会这样呢? 我究竟做错了什么? 我试过在order by子句中将ASC和DESC添加到每个字段中,这是没有意义的。

有趣的是,它适用于某些记录,而对于另一些记录,结果却是乱序的,如上所示。

您的“数字”可能是文本,因此请使用Val()转换为数字:

ORDER BY DRS_FILE.SSN, Val(DRS_FILE.P1);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM