天天看點

SQL Server 特殊字元 上标 下标

先來記錄下今天看到的一個比較好玩的東西,之前有見過一次,今天逛論壇的時候又發現了(特殊字元的輸入方法):

--ALT+小鍵盤0153=™
--ALT+小鍵盤0169=©
--ALT+小鍵盤0174=®
--ALT+小鍵盤0177=±
--ALT+小鍵盤0178=²
--ALT+小鍵盤0179=³
--ALT+小鍵盤0188=¼
--ALT+小鍵盤0189=½ 
           

下面進入正題,在SQL Server中對于字元串中含有上标或者下标的處理方法:

--建立測試表,NVARCAHR類型 
create table test01 (name nvarchar(100)) 

--插入測試資料,這裡就可以用到上面那個快捷鍵來輸入這些字元了,這裡先插入一個不帶N''的 
insert into test01(name) values('1000±™'); 
--再插入一個,這個時候帶 N''
insert into test01(name) values(N'1111±™'); 

--檢視下插入的結果:
select * from test01 
--name
--1000±?
--1111±™

--再來這樣查詢下看看,先不帶 N''
select name as name1000 from test01 where name='1000±™'
--name1000
--1000±?

--帶N''查下,無傳回
select name as name1000 from test01 where name=N'1000±™'
--name1000 

select name as name1111 from test01 where name='1111±™'
--name1111 

--帶上N'',才能查出來
select name as name1111 from test01 where name=N'1111±™'
--name1111
--1111±™

           

其實,關鍵問題就出現在N‘’上面,name字段定義為nvarchar()類型的,是以可以存儲特殊類型的字元如‘ ±™ ’,在插入或者查詢的時候,這個N‘’是不能省去的。

繼續閱讀