1樓:匿名使用者
百分號就是萬用字元,跟星號的區別如下:
一、使用位置不同
1、萬用字元:萬用字元在where語句後,匹配字元實現查詢功能。
2、星號:星號在where語句前。
二、功能不同
1、萬用字元:用來在儲存的資料行中匹配查詢。
2、星號:用來指定查詢的資料列名。
三、用法不同
1、萬用字元:select 列1,列2... from 表a where 列1="指定值" and 列2 like '%an%'。
2、星號:select * from dmsp.dmsp_dimension_content limit 0, 1000。
2樓:
我整理的sql模糊查詢供你參考:
sql提供了四種匹配模式:
1,%:表示任意0個或多個字元。可匹配任意型別和長度的字元,有些情況下若是中文,請使用兩個百分號(%%)表示。
比如 select * from [user] where u_name like 』%三%』
將會把u_name為「張三」,「張貓三」、「三腳貓」,「唐三藏」等等有「三」的記錄全找出來。
另外,如果需要找出u_name中既有「三」又有「貓」的記錄,請使用and條件
select * from [user] where u_name like 』%三%』 and u_name like 』%貓%』
若使用 select * from [user] where u_name like 』%三%貓%』
雖然能搜尋出「三腳貓」,但不能搜尋出符合條件的「張貓三」。
2,_:表示任意單個字元。匹配單個任意字元,它常用來限制表示式的字元長度語句:
比如 select * from [user] where u_name like 』_三_』
只找出「唐三藏」這樣u_name為三個字且中間一個字是「三」的;
再比如 select * from [user] where u_name like 』三__』;
只找出「三腳貓」這樣name為三個字且第一個字是「三」的;
3,[ ]:表示括號內所列字元中的一個(類似正規表示式)。指定一個字元、字串或範圍,要求所匹配物件為它們中的任一個。
比如 select * from [user] where u_name like 』[張李王]三』
將找出「張三」、「李三」、「王三」(而不是「張李王三」);
如 [ ] 內有一系列字元(01234、abcde之類的)則可略寫為「0-4」、「a-e」
select * from [user] where u_name like 』老[1-9]』
將找出「老1」、「老2」、……、「老9」;
4,[^ ] :表示不在括號所列之內的單個字元。其取值和 相同,但它要求所匹配物件為指定字元以外的任一個字元。
比如 select * from [user] where u_name like 』[^張李王]三』
將找出不姓「張」、「李」、「王」的「趙三」、「孫三」等;
select * from [user] where u_name like 』老[^1-4]』;
將排除「老1」到「老4」,尋找「老5」、「老6」、……
5,查詢內容包含萬用字元時
由於萬用字元的緣故,導致我們查詢特殊字元「%」、「_」、「[」的語句無法正常實現,而把特殊字元用「[ ]」括起便可正常查詢。據此我們寫出以下函式:
function sqlencode(str)
str=replace(str,"[","[") 』此句一定要在最前
str=replace(str,"_","[_]")
str=replace(str,"%","[%]")
sqlencode=str
end function
在查詢前將待查字串先經該函式處理即可。
3樓:匿名使用者
簡單的說 % 代表 沒有或是多個字元。 _ 只能代表一個字元兩者可用在like裡。
* 只能用正規表示式中,代表沒有或多個字元。
4樓:匿名使用者
sql server 中 "%" 替代一個或多個字元
"_ "僅替代一個字元
"*"在access中用來替代一個或多個字元
5樓:賓士
[*]和[%]雖然都叫萬用字元但是含義不一樣,在通常的用法中主要區別如下:
1、萬用字元[*],如有sql:select * from test1;
上面這個sql中使用的就是萬用字元[*],代表的含義是表[test1]中的所有欄位(用這種方法就不用把欄位一一列出了),這種用法相信你應該用過。
2、萬用字元[%],如有sql:select a from test2 where a like '%張三';
上面這個sql中使用的就是萬用字元[%],[%]用於sql的模糊查詢中,其含義表示任意字元。[a like '%張三']表示只要a欄位以[張三]結尾(前面是[任意字元]都可以)就滿足要求。以此類推[a like '%張三%']則表示只要a欄位含有[張三]就符合要求。
說明:特殊的在access資料庫中沒有[%]萬用字元,只有[*]萬用字元,它的含義包含上面講的兩個部分。
---以上,希望對你有所幫助。
6樓:
呵呵,不要關那麼多啦,sql我用% access裡好像只能用*
萬用字元百分號表示什麼意思
7樓:匿名使用者
%xx表示特殊符號,xx為不同的數字,如%20表示空格
sql怎麼知道有沒有% (不是萬用字元,而是百分號)
8樓:匿名使用者
like 'db\%i'escape'\'
這句的意思就是:查詢db%i這樣的內容,其中\是換嗎字元,所以%被轉義為普通的%字元,而且此方法適合於萬用字元『_』
希望對你有用,誠邀交流,希望採納!
9樓:齊大大一號
sql裡面有「% 」符號。
sql中「%」表示萬用字元。例如:like 'db\%i'escape'\'這句的意思就是:
查詢db%i這樣的內容,其中\是換嗎字元,所以%被轉義為普通的%字元,而且此方法適合於萬用字元『-』。
10樓:匿名使用者
如:select * from 學生表 where 姓名 like'%[%]%'
有如下結果:
2009121001 賈%濤 男 1992-11-02 00:00:00.000 河南鄭州 005 2003
2009121002 李明% 女 1989-06-03 00:00:00.000 河南焦作 001 2001
【萬用字元詳解:】
將萬用字元作為文字使用
可以將萬用字元模式匹配字串用作文字字串,方法是將萬用字元放在括號中。下表顯示了使用 like 關鍵字和 [ ] 萬用字元的示例。
符號 含義
like '5[%]' 5%
like '[_]n' _n
like '[a-cdf]' a、b、c、d 或 f
like '[-acdf]' -、a、c、d 或 f
like '[ [ ]' [
like ']' ]
like 'abc[_]d%' abc_d 和 abc_de
like 'abc[def]' abcd、abce 和 abcf
11樓:
1.sqlserver的語法用 like '%[%]%' 這個可以
2.oracle的語法的話,簡單的可以使用instr函式,instr(column_name, '%') > 0
也可以使用轉義select * from table where columnname like '%\%%' escape '\'
大家好,在sql語句中這個「*」星號是什麼意思啊?謝謝
12樓:匿名使用者
這個給你簡單說下吧,,,
1、沒有限定符的話就是代表所有引用表的欄位例如:select *
from a inner join b on a.id=b.id2、有限定符的話,就是代表限定表的所有列
例如:select b.*
from a inner join b on a.id=b.id3、他也可以標示乘號,,,,
13樓:傻傻的笑
* 代表 全部的意思 例如select * from tb_name 、就是顯示所有欄位
如果是 表示式的話 就是 乘法 的意思
百分號什麼意思,c 中 百分號 是什麼意思
就是百分號,可以把兩個數量的比值寫成n 的形式,也可以把分母是100的分數寫成百分數。就是把一個數縮小100倍,本質就是把這個數除以100 c語言中的百分號是什麼意思?比如a 5,b 2,c a b,c就是求5除以2的餘,即c 1 d s c 你可以認為 是一種格式 是控制輸出資料型別的 d整形 s...
c 語言中 百分號如何輸出 如要求輸出
直接輸出就行啊。int i 50 cout 突然想到你可能是c並非標準c 如果是c還可以使用。printf d i 即兩個 連寫帶表 在c 中,如zhuhuaizhong所說,cout 但在c中,只需雙寫即可,即 printf d 50 按住shift鍵,再按住上面一排數字鍵的 5 要是看不懂你就直...
把百分數後邊的百分號去掉,得到的數與原數的差是11 88,原來這個百分數是多少
假面 把一個百分數後邊的百分號去掉,得到的數與原數的差是11.88,原來這個百分數是12 根據題意可計算 11.88 100 1 11.88 99 0.12 0.12 12 所以原百分數是12 蹦迪小王子啊 原百分數是12 把一個百分數後邊的百分號去掉,得到的數與原數的差是11.8811.88 10...