是否可以按表中的字符选择最短和最长的字符串?
我有一CITY列类型VARCHAR(20),我想按长度的字母顺序选择最短和最长的城市名称。
我喜欢这个
SELECT CITY,LENGTH(CITY) FROM STATION WHERE LENGTH(CITY) IN ( SELECT MAX(LENGTH(CITY)) FROM STATION UNION SELECT MIN(LENGTH(CITY)) FROM STATION ) ORDER BY CITY ASC;
按字母顺序排列时,让城市名称列为 ABC、DEF、PQRS 和 WXY,长度分别为 3、3、4 和 3。命名最长的城市显然是 PQRS,但也有最短的选项-命名城市;我必须选择 ABC,因为它按字母顺序排在第一位。
我的查询最终以长度为 3 的所有三个 CITY 结束。
ABC 3 DEF 3 PQRS 4 WXY 3
SELECT 的结果必须是
ABC 3 PQRS 4