今天我遇到的问题导致我难以解决。
在应用程序中我希望以字母顺序显示记录,因此在SQL语句中我使用ORDER BY,但看起来像CAPITAL字母在小写字母之前,所以以Z
开头的记录是在a
之前。
这是我的sql语句的例子
SELECT * FROM myTable WHERE id= 5 ORDER BY name
你有什么想法吗?从数据库中检索数据后,我可以对DataTable对象中的数据进行排序吗?或者它可以通过更复杂的sql语句来完成?
任何想法都将受到赞赏
答案 0 :(得分:1)
尝试
SELECT * FROM myTable WHERE id= 5 ORDER BY LOWER(name)
OR
SELECT * FROM myTable WHERE id= 5 ORDER BY LCASE(name)
取决于您使用的数据库
答案 1 :(得分:0)
您可以修改SQL查询,以便在订购之前将所有大写转换为较低的
SELECT * FROM myTable WHERE id = 5 ORDER BY LOWER(name)
答案 2 :(得分:0)
您可以通过在SQL中提供案例来执行排序。就这样做:
SELECT * FROM myTable WHERE id= 5 ORDER BY UPPER(name)
OR
SELECT * FROM myTable WHERE id= 5 ORDER BY UCASE(name)
订购将在大写字母名称上完成,而结果将与表格中的相同。
答案 3 :(得分:0)
试试这个......
SELECT * FROM myTable WHERE id= 5 ORDER BY name COLLATE Latin1_General_100_CI_AS