oracle :
在oracle9i中新增了按照拼音、部首、笔画排序功能。设置NLS_SORT值SCHINESE_RADICAL_M 按照部首(第一顺序)、笔划(第二顺序)排序SCHINESE_STROKE_M 按照笔划(第一顺序)、部首(第二顺序)排序SCHINESE_PINYIN_M 按照拼音排序,系统的默认排序方式为拼音排序举例如下:表名为 dept ,其中name字段是中文,下面分别实现按照单位名称的笔划、部首和拼音排序。//按照笔划排序select * from dept order by nlssort(name,‘NLS_SORT=SCHINESE_STROKE_M‘); //按照部首排序 select * from dept order by nlssort(name,‘NLS_SORT=SCHINESE_RADICAL_M‘);//按照拼音排序,此为系统的默认排序方式select * from dept order by nlssort(name,‘NLS_SORT=SCHINESE_PINYIN_M‘);
sqlserver
select * from table order by name collate Chinese_PRC_CS_AS_KS_WS
sql语句按照汉字拼音首字母排序
标签:
小编还为您整理了以下内容,可能对您也有帮助:
根据名字排序查询 SQL
1、在SQL中,排序关键字为ORDER
BY。
2、假如要查询表t1中数据并按“名字”字段排序,可以使用以下语句:
SELECT * FROM t1 ORDER BY 名字3、上述排序方式默认为正序排列,若想倒序排列,可以在语句最后加上
DESC。
sql 如何按照汉字的拼音的首字母顺序来查询!~!~
字段1内的数据是汉字
最后在where查询语句的后面加上
order by 字段1 就可以了
补充:
order by 是排序
order by 字段1 desc 为倒序
sql 如何按照汉字的拼音的首字母顺序来查询!~!~
字段1内的数据是汉字
最后在where查询语句的后面加上
order by 字段1 就可以了
补充:
order by 是排序
order by 字段1 desc 为倒序
sql中怎样按拼音排序
这个有点难,不过汉字编码本来就是部分的按拼音排序的,比如“啊”的内码比“这”小,所以你直接排序汉字,得到的结果也是大致按照拼音排序。
GB2312编码分两级汉字,一级汉字是常用字,内码比二级汉字小,但是在一级汉字内部,内码是按照拼音排序的,
sql中怎样按拼音排序
这个有点难,不过汉字编码本来就是部分的按拼音排序的,比如“啊”的内码比“这”小,所以你直接排序汉字,得到的结果也是大致按照拼音排序。
GB2312编码分两级汉字,一级汉字是常用字,内码比二级汉字小,但是在一级汉字内部,内码是按照拼音排序的,
asp中sql语句怎么能按姓名的首字母排序
sql中按姓名拼音排序 select isnull(b.py,upper(left(a.username,1))) as py
,a.username
from (
select 'a3' as username
union select UserName from UserTable --修改这里的姓名列~
)
a
left outer join (
select 'A' as PY,N'骜' as word, N'啊' as sword
union select 'B',N'簿',N'骜'
union select 'C',N'错',N'簿'
union select 'D',N'鵽',N'错'
union select 'E',N'樲',N'鵽'
union select 'F',N'鳆',N'樲'
union select 'G',N'腂',N'鳆'
union select 'H',N'夻',N'腂'
union select 'J',N'攈',N'夻'
union select 'K',N'穒',N'攈'
union select 'L',N'鱳',N'穒'
union select 'M',N'旀',N'鱳'
union select 'N',N'桛',N'旀'
union select 'O',N'沤',N'桛'
union select 'P',N'曝',N'沤'
union select 'Q',N'囕',N'曝'
union select 'R',N'鶸',N'囕'
union select 'S',N'蜶',N'鶸'
union select 'T',N'箨',N'蜶'
union select 'W',N'鹜',N'箨'
union select 'X',N'鑂',N'鹜'
union select 'Y',N'韵',N'鑂'
union select 'Z',N'咗',N'韵'
) b on left(username,1) between b.sword and b.word
where UserName<>'a3' and py='A' --这里的and py='A'是查询以A拼音开头的姓名,你可以 改成其他的,或者直接去掉就是查询所有的~
order by py
asp中sql语句怎么能按姓名的首字母排序
sql中按姓名拼音排序 select isnull(b.py,upper(left(a.username,1))) as py
,a.username
from (
select 'a3' as username
union select UserName from UserTable --修改这里的姓名列~
)
a
left outer join (
select 'A' as PY,N'骜' as word, N'啊' as sword
union select 'B',N'簿',N'骜'
union select 'C',N'错',N'簿'
union select 'D',N'鵽',N'错'
union select 'E',N'樲',N'鵽'
union select 'F',N'鳆',N'樲'
union select 'G',N'腂',N'鳆'
union select 'H',N'夻',N'腂'
union select 'J',N'攈',N'夻'
union select 'K',N'穒',N'攈'
union select 'L',N'鱳',N'穒'
union select 'M',N'旀',N'鱳'
union select 'N',N'桛',N'旀'
union select 'O',N'沤',N'桛'
union select 'P',N'曝',N'沤'
union select 'Q',N'囕',N'曝'
union select 'R',N'鶸',N'囕'
union select 'S',N'蜶',N'鶸'
union select 'T',N'箨',N'蜶'
union select 'W',N'鹜',N'箨'
union select 'X',N'鑂',N'鹜'
union select 'Y',N'韵',N'鑂'
union select 'Z',N'咗',N'韵'
) b on left(username,1) between b.sword and b.word
where UserName<>'a3' and py='A' --这里的and py='A'是查询以A拼音开头的姓名,你可以 改成其他的,或者直接去掉就是查询所有的~
order by py
access如何用sql语句按首字母排序
和你sql排序规则有关系,你重新设置一下sql的排序规则就可以了,(其排序规则为
Chinese_PRC)
--按拼音
ALTER
TABLE
tableName
ALTER
COLUMN
colName
nvarchar(100)
COLLATE
Chinese_PRC_CI_AS
select
*from
tableName
order
by
colName
--按笔画
ALTER
TABLE
tableName
ALTER
COLUMN
colName
nvarchar(100)
COLLATE
Chinese_PRC_Stroke_CI_AS
select
*from
tableName
order
by
colName
access如何用sql语句按首字母排序
和你sql排序规则有关系,你重新设置一下sql的排序规则就可以了,(其排序规则为
Chinese_PRC)
--按拼音
ALTER
TABLE
tableName
ALTER
COLUMN
colName
nvarchar(100)
COLLATE
Chinese_PRC_CI_AS
select
*from
tableName
order
by
colName
--按笔画
ALTER
TABLE
tableName
ALTER
COLUMN
colName
nvarchar(100)
COLLATE
Chinese_PRC_Stroke_CI_AS
select
*from
tableName
order
by
colName
sql按照拼音字段排序,且只查出以字母A开头的所有数据,这个sql应该怎么写
SQLSERVER数据库可以这样
select *from table_name
where left(拼音查询,1)='A'
order by 拼音查询
追问我的是oracle数据库,left不支持,不知道应该采用那个关键字代替
追答改成 substr(拼音查询,1,1)='A'
asp中sql语句怎么能按姓名的首字母排序,并按A,B,C...分组
按拼音首字母进行排序
1,目前暂以歌手的拼音首字母排序
2,数据库中输入的歌手名称,直接汉字(除了外国佬:),不带任何的首字母前缀
3,解决办法,用一函数(现成的),功能嘛就是提取一段字符串的首字母
<script language=vbs>
function getpychar(char)
tmp=65536+asc(char)
if(tmp>=45217 and tmp<=45252) then
getpychar= "A"
elseif(tmp>=45253 and tmp<=45760) then
getpychar= "B"
elseif(tmp>=45761 and tmp<=46317) then
getpychar= "C"
elseif(tmp>=46318 and tmp<=46825) then
getpychar= "D"
elseif(tmp>=46826 and tmp<=47009) then
getpychar= "E"
elseif(tmp>=47010 and tmp<=47296) then
getpychar= "F"
elseif(tmp>=47297 and tmp<=47613) then
getpychar= "G"
elseif(tmp>=47614 and tmp<=48118) then
getpychar= "H"
elseif(tmp>=48119 and tmp<=49061) then
getpychar= "J"
elseif(tmp>=49062 and tmp<=49323) then
getpychar= "K"
elseif(tmp>=49324 and tmp<=49895) then
getpychar= "L"
elseif(tmp>=49896 and tmp<=50370) then
getpychar= "M"
elseif(tmp>=50371 and tmp<=50613) then
getpychar= "N"
elseif(tmp>=50614 and tmp<=50621) then
getpychar= "O"
elseif(tmp>=50622 and tmp<=50905) then
getpychar= "P"
elseif(tmp>=50906 and tmp<=51386) then
getpychar= "Q"
elseif(tmp>=51387 and tmp<=51445) then
getpychar= "R"
elseif(tmp>=51446 and tmp<=52217) then
getpychar= "S"
elseif(tmp>=52218 and tmp<=52697) then
getpychar= "T"
elseif(tmp>=52698 and tmp<=52979) then
getpychar= "W"
elseif(tmp>=52980 and tmp<=53640) then
getpychar= "X"
elseif(tmp>=53689 and tmp<=54480) then
getpychar= "Y"
elseif(tmp>=54481 and tmp<=62289) then
getpychar= "Z"
else '如果不是中文,则不处理
getpychar=char
end if
end function
function getpy(str)
for i=1 to len(str)
getpy=getpy&getpychar(mid(str,i,1))
next
end function
alert("布鲁斯狼 的拼音首字母是:"&getpychar("布鲁斯狼"))
</script>追问全是这,你试了吗,可以吗