具有order by的SQl查询
你能帮我生成一个sql查询(MySQL)吗?它允许我按升序/降序(a-Z/Z-a)对结果进行排序,并输入最后几行没有值的内容 您正在查找附加到select查询上的“order by”语句具有order by的SQl查询,sql,mysql,sql-order-by,Sql,Mysql,Sql Order By,你能帮我生成一个sql查询(MySQL)吗?它允许我按升序/降序(a-Z/Z-a)对结果进行排序,并输入最后几行没有值的内容 您正在查找附加到select查询上的“order by”语句 select stateName from stateTable order by coalesce(stateName, 'ZZZZZZZZZZZZZZZZZZZZZZZZZ') 与更改顺序列相比,更不容易出错的是: SELECT columnOfInterest FROM theTable
select stateName
from stateTable
order by coalesce(stateName, 'ZZZZZZZZZZZZZZZZZZZZZZZZZ')
与更改顺序列相比,更不容易出错的是:
SELECT
columnOfInterest
FROM
theTable
ORDER BY
CASE WHEN columnOfInterest IS NULL THEN 1 ELSE 0 END CASE
, columnOfInterest
请澄清:你所说的“把没有价值的最后几行放进去”是什么意思?另外,你想用什么来订购。如果您可以添加一段示例代码,那将非常有帮助。如果我们不知道要查询什么,那么编写SQL查询就很困难DmySQL不支持空值LAST | FIRST关键字?我相信Oracle的空值FIRST是非标准SQL?只要没有名为“zzzzzzzzzzzzzzzzz ania”的新状态,它就可以工作:)开玩笑的是,在定义不太明确的域中,你必须小心使用硬值。这在两种情况下都会失败:当列(在你的示例中是StateName)是数字时,并且是降序的。假设他在添加Desc关键字时会将其更改为“aaaaaaaaaa”。这意味着什么?zzzzzzzzz只是一个选择字符串的示例(假设stateName是一个字符串)将在列表中最后出现。这似乎是唯一正确的答案
SELECT
columnOfInterest
FROM
theTable
ORDER BY
CASE WHEN columnOfInterest IS NULL THEN 1 ELSE 0 END CASE
, columnOfInterest