在我问的上一个问题中,有人建议MAX(value)
优先考虑字母化的语法
但是,我正在处理该CASE
语句并且 usingMAX(CASE statement)
在语法上不正确。
SELECT id,
CASE
WHEN filename LIKE '%.mp3' THEN 'song'
ELSE 'other' END as type
FROM filenames
1 song
2 song
2 other
3 other
3 song
SELECT id,
CASE
WHEN filename LIKE '%.mp3' THEN 'song'
ELSE 'other' END as type
FROM filenames
GROUP BY id;
1 song
2 song
3 other
type
对于按字母顺序排在最后的字段,我将如何优先考虑该字段?前任。结果集应该是
1 song
2 song
3 song
如果可能的话,我想避免嵌套语句。这可以用MAX(type)
语法来完成吗?