ORDER BY 在 MySQL 中无法与 UNION 一起正常工作
ORDER BY not working properly with UNION in MySQL
我有 2 个表 t1 和 t2 如下
我想 select 使用 UNION 对两个表的结果进行排序并按数量列排序。我写的查询是
(SELECT * FROM t1)
UNION ALL
(SELECT * FROM t2)
ORDER BY qty ASC;
这给了我以下结果
有人能告诉我这里出了什么问题吗?根据查询,我应该按升序对 qty 列进行排序。我也试过
(SELECT * FROM t1
UNION ALL
SELECT * FROM t2)
ORDER BY qty ASC;
也不走运。如果我使用 id 或 item 进行排序,它就可以正常工作。这真是令人沮丧。请帮忙。
可能与 Sorting varchar field numerically in MySQL
重复
尝试
(SELECT * FROM t1
UNION ALL
SELECT * FROM t2)
ORDER BY CAST(qty as SIGNED INTEGER) ASC;
我有 2 个表 t1 和 t2 如下
我想 select 使用 UNION 对两个表的结果进行排序并按数量列排序。我写的查询是
(SELECT * FROM t1)
UNION ALL
(SELECT * FROM t2)
ORDER BY qty ASC;
这给了我以下结果
有人能告诉我这里出了什么问题吗?根据查询,我应该按升序对 qty 列进行排序。我也试过
(SELECT * FROM t1
UNION ALL
SELECT * FROM t2)
ORDER BY qty ASC;
也不走运。如果我使用 id 或 item 进行排序,它就可以正常工作。这真是令人沮丧。请帮忙。
可能与 Sorting varchar field numerically in MySQL
重复尝试
(SELECT * FROM t1
UNION ALL
SELECT * FROM t2)
ORDER BY CAST(qty as SIGNED INTEGER) ASC;