wamper
(wamper)
金牌会员
 
资深会员
UID 23187
精华
0
积分 1025
帖子 1193
金钱 1025 喜悦币
威望 0
人脉 0
阅读权限 70
注册 2003-9-14 来自 北京
状态 在线
|
放点东西
SELECT CASE WHEN PYCODE BETWEEN 45217 AND 45252 THEN 'A'
WHEN PYCODE BETWEEN 45253 AND 45760 THEN 'B'
WHEN PYCODE BETWEEN 45761 AND 46317 THEN 'C'
WHEN PYCODE BETWEEN 46318 AND 46825 THEN 'D'
WHEN PYCODE BETWEEN 46826 AND 47009 THEN 'E'
WHEN PYCODE BETWEEN 47010 AND 47296 THEN 'F'
WHEN PYCODE BETWEEN 47297 AND 47613 THEN 'G'
WHEN PYCODE BETWEEN 47614 AND 48118 THEN 'H'
WHEN PYCODE BETWEEN 48119 AND 49061 THEN 'J'
WHEN PYCODE BETWEEN 49062 AND 49323 THEN 'K'
WHEN PYCODE BETWEEN 49324 AND 49895 THEN 'L'
WHEN PYCODE BETWEEN 49896 AND 50370 THEN 'M'
WHEN PYCODE BETWEEN 50371 AND 50613 THEN 'N'
WHEN PYCODE BETWEEN 50614 AND 50621 THEN 'O'
WHEN PYCODE BETWEEN 50622 AND 50905 THEN 'P'
WHEN PYCODE BETWEEN 50906 AND 51386 THEN 'Q'
WHEN PYCODE BETWEEN 51387 AND 51445 THEN 'R'
WHEN PYCODE BETWEEN 51446 AND 52217 THEN 'S'
WHEN PYCODE BETWEEN 52218 AND 52697 THEN 'T'
WHEN PYCODE BETWEEN 52698 AND 52979 THEN 'W'
WHEN PYCODE BETWEEN 52980 AND 53640 THEN 'X'
WHEN PYCODE BETWEEN 53689 AND 54480 THEN 'Y'
WHEN PYCODE BETWEEN 54481 AND 62289 THEN 'Z'
ELSE enchar
END AS PYM,*
FROM (
SELECT ascii(substr(convert(title, 'utf8', 'gbk'),1,1)) * 256 + ascii(substr(convert(title, 'utf8', 'gbk'),2,1)) AS PYCODE,
CASE WHEN upper(substr(convert(title, 'utf8', 'gbk'), 1, 1))
IN ('A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z')
THEN upper(substr(convert(title, 'utf8', 'gbk'), 1, 1)) ELSE '' END AS ENCHAR,
title
FROM news order by convert(title, 'utf8', 'gbk')
) AS PYTABLE 这个是postgresql中用的,取中文首字母,mysql可以做相应修改,喜欢的尽管拿去
|
|