1

我只想问一下我的查询/查询遇到的问题。例如,我从一个查询中得到以下结果,该查询是 4 个查询的联合:

alpha,alpha,alpha,bravo,bravo,bravo,charlie,charlie,charlie,delta,delta,delta

我需要做什么才能使结果的顺序:

阿尔法,布拉沃,查理,三角洲,阿尔法,布拉沃,查理,三角洲,阿尔法,布拉沃,查理,三角洲?

如果这个问题之前可能已经在 stackoverflow 中得到回答,我深表歉意,因为我不知道这个问题的正确关键字来搜索数据库。任何帮助将不胜感激,谢谢!

4

3 回答 3

4

您可以有一个类似于排序顺序的新列:

SELECT *
FROM
(
   SELECT acolumn, 1 AS sortorder FROM table1
   UNION ALL
   SELECT acolumn, 2              FROM table2
   UNION ALL
   SELECT acolumn, 3              FROM table3
   UNION ALL
   SELECT acolumn, 4              FROM table4
) u
ORDER BY aColumn, sortorder;
于 2012-12-24T13:37:46.530 回答
0

您可以使用 distinct 关键字:

Select DISTINCT
于 2012-12-24T13:38:24.160 回答
0

MySQL 可以按数字(1>2>n)或字母顺序排列(a>b>x)。数据的排序方式取决于要排序的类型。

Mahmouds 的回答是创建一个数字字段,您可以通过该字段对联合进行排序。

于 2012-12-24T13:46:47.983 回答