0

如何获得从高到低的价格,请帮助我在我的查询下面给出....

我将价格数据类型定义为浮点数

select * from product_tb where sub_id='"+bl.sub_id+"' order by price desc

但是通过这个查询,我的输出是:

9999,
999,
9980,
990,
99,
99,
950,
95,
900,
799,
700,
695,
695,
6595,
6592,
600,
595,

我希望我的输出像:

9999,9980,6595,6592,999,990,950,900,799,700,695,600,595,99,99,95

建议我针对这种情况进行适当的查询和方法。谢谢你

4

2 回答 2

1

试试这个 :

 select * from product_tb where sub_id='"+bl.sub_id+"' order by Convert(float,price) desc

如果它有效,您应该得出结论,价格没有被声明为浮动。

于 2013-09-02T08:34:26.893 回答
0

您正在订购“文本”字段,结果按字母顺序排列。您需要将您的价格字段转换为 Int:

select * from product_tb where sub_id='"+bl.sub_id+"' order by CAST(price AS INT) desc
于 2013-09-02T08:32:39.777 回答