Office中国论坛/Access中国论坛

标题: 请教排序 [打印本页]

作者: 简    时间: 2012-5-10 21:46
标题: 请教排序
如图所示,我想请教,当我在卡号框中输入12-05-时,如何使列表框中的筛选内容按001,002,003……的顺序排序呢?

[attach]49165[/attach]

[attach]49164[/attach]
作者: todaynew    时间: 2012-5-10 22:00
select ......
from .....
where ....
order by right(字段名,9)
作者: 简    时间: 2012-5-11 07:21
todaynew 发表于 2012-5-10 22:00
select ......
from .....
where ....

我也像你这样写的,但是不起作用。

我的代码如下:
Private Sub txt1_Change()
    Me.lb0.RowSource = "SELECT DISTINCT 卡号 FROM AA where 卡号 like '*" & Me.txt1.Text & "*' ORDER BY right(卡号,9);"

End Sub

我是放在更新事件中,因为我一方面想动态模糊查询,另一方面想根据动态模糊查询的结果来排序。
作者: Henry D. Sy    时间: 2012-5-11 10:58
  1. SELECT  卡号 FROM AA where 卡号 like '*" & Me.txt1.Text & "*' ORDER BY right(卡号,3)
复制代码

作者: Henry D. Sy    时间: 2012-5-11 10:59
  1. SELECT  卡号 FROM AA where 卡号 like '*" & Me.txt1.Text & "*' ORDER BY right(卡号,3)
复制代码

作者: Henry D. Sy    时间: 2012-5-11 11:01
  1. SELECT  AA.卡号
  2. FROM AA
  3. GROUP BY AA.卡号, Right([卡号],3)
  4. ORDER BY Right([卡号],3)
复制代码
如果,有必要踢掉重复记录

作者: Henry D. Sy    时间: 2012-5-11 11:04
  1. SELECT  卡号 FROM AA where 卡号 like '*" & Me.txt1.Text & "*' GROUP BY AA.卡号, Right([卡号],3) ORDER BY right(卡号,3)
复制代码

作者: 简    时间: 2012-5-11 11:23
Henry D. Sy 发表于 2012-5-11 10:59

right(卡号,3)也不行的,这个我试过的。
作者: 简    时间: 2012-5-11 11:26
Henry D. Sy 发表于 2012-5-11 11:04

这个代码测试通过,谢谢Henry D.sy版主。
作者: ycxchen    时间: 2012-5-11 16:18
我也学习,谢谢!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3