【发布时间】:2018-09-02 12:27:12
【问题描述】:
SELECT `01` FROM perf WHERE year = '2013' order by CAST(`01` AS INT) LIMIT 3
第 01 列的数值为 varchar。我需要将“01”的前 3 位订购为整数。为什么这个查询不起作用?
这样的表;
+----------------------+
| name | 01 | 02 | year|
+----------------------+
|name1 | 90 |*** |2013 |
+----------------------+
|name2 | 93 | 55 |2013 |
+----------------------+
|name3 |*** | 78 |2013 |
+----------------------+
查询应按 01 排序(忽略 *)并给出名称和值。
【问题讨论】:
-
你能提供样本记录和想要的结果吗?
-
这将给出列的最低三个值。你想要
ORDER BY ... DESC吗? -
按 ... desc 排序,是的。此查询给出 SQL 语法错误。
标签: mysql sql-order-by