0

我有一个存储自定义项目的 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 程序员,自从我开始工作以来已经有几天了。有人会帮助我吗。先感谢您。

迈克酷盖!

4

1 回答 1

1

select * from table_name order by cast (PARTICULARS as int) asc

您应该键入 cast varchar 到 int 或 float 来排序。.

希望它对你有好处。

于 2013-04-12T05:18:22.127 回答