【发布时间】:2013-04-04 10:53:00
【问题描述】:
我有一个存储自定义项目的 Firebird2.1 表 - 一个名为 'PARTICLARS' 的 varchar(35) 列,它是这样的:
1 of 20% item
5 of 20% item
3 of 20% item
4 of 20% item
7 of 20% item
2 of 20% item
.
.
.
我想像这样以自然的方式对它们进行排序:
1 of 20% item
2 of 20% item
3 of 20% item
4 of 20% item
5 of 20% item
7 of 20% item
.
.
.
我已经完成了许多 sql 命令,例如:
select * from TABLE order by 1
select * from TABLE order by PARTICULARS asc nulls last
select * from TABLE order by '00000000000000000000000000000000000'+trim(PARTICULARS)(35)
select * cast(PARTICULARS as varchar(35)) from TABLE order by 1
但我仍然得到上面的同一张表。我是一个新手 vb.net 程序员,自从我开始工作以来已经有几天了。有人会帮助我吗。提前谢谢你。
迈克酷哥!
【问题讨论】:
-
我本来希望
ORDER BY来处理这个问题。您的问题内容是您所使用的真正价值观吗? -
我刚刚测试过,
ORDER BY在这里应该可以正常工作。表的DDL是什么,包括列的字符集和排序规则? -
您使用的
ORDER BY 1表示在第一列上排序,如果您执行SELECT *,则PARTICULARS实际上是第一列,否则只需输入明确的ORDER BY PARTICULARS。跨度>
标签: sql vb.net firebird2.1