如何对MySql数据库进行排序?

时间:2009-09-13 13:51:31

标签: java mysql jdbc

我在MySql数据库“orkut”中存储了各种记录。现在我想通过java程序对该数据库进行排序。我已通过jdbc驱动程序连接到数据库。 现在我想按照“int”类型的字段“number”的降序排序该数据库,但不知道命令。我有“con”引用变量,它表示与MySql数据库的连接。

还有一件事,有一个字段“sr_no”表示序列号。记录,它不是主键。

我希望在将数据库排序为序列号后,此字段不会更改。不应该改变记录的顺序。

我希望这种排序永久存储在同一个数据库中。我不想要排序ResultSet。 我想要分类数据库。

2 个答案:

答案 0 :(得分:7)

不要试图通过Java对此进行排序 - 你会自杀。 SQL有一个order by子句就是这样做的。这是SQL:

select
    number,
    sr_no
from
    tbl
order by
    number desc

另请注意,您不能拥有永久排序的数据库。存储数据的方式不适合以您选择的顺序存储。除非您在查询中使用order by,否则永远不会指望数据库的顺序相同,除非您使用{{1}}。

答案 1 :(得分:1)

正如埃里克所说,你不能拥有一个永久排序的数据库。但是如果你想非常频繁地在大型数据集上执行这个查询,那么你可以进行各种数据库支持的索引。

它将加快您对特定密钥的搜索和排序。