如何sql查詢欄位值包含於字串

2021-12-23 07:20:00 字數 4391 閱讀 8499

1樓:

1、我們新建查詢後,寫上select關鍵字。

2、緊接著我們輸入欄位名,顯示全部欄位的話可以用星號表示。

3、接下來我們輸入from關鍵,緊接著表名。

4、表名後面立刻接著where關鍵字。

5、where後面的為我們的條件,可以寫上任意合法的條件。

6、當我們整句語句寫完後,我們就能執行檢視我們的執行結果了。

2樓:sql的藝術

select * from 表名 where 欄位名 like '%關鍵字%'

上述語句是在「表名」中的「欄位名」列搜尋包含「關鍵字」的語句

3樓:匿名使用者

實現通過substring把你的字串分割,select* from a where '%字串下標1%字串下標2%字串下標3字%符串下標4%' like value;

要用到儲存過程!

4樓:du瓶邪

select * from table_a where charindex('a',id)>0 or charindex('b',id)>0

table_a 表中 id欄位中含有"a"或者"b"的記錄.

charindex

返回字串中指定表示式的起始位置。

語法 charindex ( expression1 , expression2 [ , start_location ] )

引數 expression1

一個表示式,其中包含要尋找的字元的次序。expression1 是一個短字元資料型別分類的表示式。

expression2

一個表示式,通常是一個用於搜尋指定序列的列。expression2 屬於字串資料型別分類。

start_location

在 expression2 中搜尋 expression1 時的起始字元位置。如果沒有給定 start_location,而是一個負數或零,則將從 expression2 的起始位置開始搜尋。

返回型別

int註釋 如果 expression1 或 expression2 之一屬於 unicode 資料型別(nvarchar 或 nchar)而另一個不屬於,則將另一個轉換為 unicode 資料型別。

如果 expression1 或 expression2 之一為 null 值,則當資料庫相容級別為 70 或更大時,charindex 返回 null 值。當資料庫相容級別為 65 或更小時,charindex 僅在 expression1 和 expression2 都為 null 時返回 null 值。

如果在 expression2 內沒有找到 expression1,則 charindex 返回 0。

5樓:匿名使用者

select * from 表a where '字串' like '%' + 欄位名 + '%'

6樓:匿名使用者

用charindex不行嗎?其實很簡單,你的邏輯就是返回的資料要在你所提供的字串裡找到不就行了,你看看這樣行不行:

select * from a

where

charindex(substring(value,1,1),'a,b,d,e') <>0

andcharindex(substring(value,2,1),'a,b,d,e') <>0

andcharindex(substring(value,3,1),'a,b,d,e') <>0

7樓:匿名使用者

嚇,居然做這麼深門的研究

sql語句中查詢某欄位中含有某字串的語句怎麼寫?

8樓:大野瘦子

select filename from oa_file where filename not like '%[!-¥]%'

或者這個:

select filename from oa_file where filename not like '%[!-?]%'

出現的問題就是問號和問好也是不一樣的,比如說英文標點半形的問號是「?」,英文標點全形的問號是「?」但是中文半形問號是「?」中文全形的問號是「?」

這些都是不一樣的,你搜出來的都是帶有英文半形問號的檔案。

9樓:

你試試這個吧:

select filename from oa_file where filename not like '%[!-¥]%'

如果不行就再試試這個:

select filename from oa_file where filename not like '%[!-

10樓:匿名使用者

寫法是對的啊。

你不是說是亂碼才顯示成?的嘛,但對於資料庫來說不是?咯。

11樓:

你是用的sqlserver資料庫?還是其他的?

12樓:匿名使用者

本身就是亂碼的,匹配不上的

13樓:匿名使用者

語句沒問題

還是亂碼的問題吧

亂碼的編碼型別不一樣。

看似非是

14樓:

是對的吧,我試了下是ok的啊

mysql 如何查詢一個欄位中的資料是否包含於字串中?

15樓:陽光上的橋

myid是什麼型別bai,是數值類

du型應這樣zhi寫:dao

select * from table where saleid=2376 and myid in (2,3,4,5,6)

如果myid是字元型別,應版該這權

樣寫:select * from table where saleid=2376 and myid in ('2','3','4','5','6')

16樓:匿名使用者

select * from table where saleid=2376 and myid in ('2','3','4','5','6')

in裡面得分著寫

現在用sql語句查出來欄位裡包含某個字串的所有記錄怎麼查

17樓:匿名使用者

一般用substring函式擷取出特定欄位,如--使用者姓名第二個字是'大'字的

select * from users where substring(username,2,1)='大'

第二種方法就是直接like模糊查詢,看具體情況使用select * from users where username like '%大%'

18樓:匿名使用者

select * from 表 where 欄位 like '%字串%'

19樓:匿名使用者

charindex() != 0

sql中,怎麼判斷某一個欄位的值中含有某特定字串

20樓:

select * from table where columns like '%中國%'

含有"中國"倆字的

在sql語句中怎麼判斷一個欄位是否包含在另一個字串中

21樓:zyr江火似流螢

思路是,讀取b.name字串後進行字串的的分割  name.,然後最後執行模糊查詢a表,可以這樣

where     (a.namelike '%查%') and (a.namelike '%體%')

只能說完全用sql語句實現,有點難吧!

string name = "查體";

char namechar = name.toarray();

string sqlstr = "select * from a ";

for (int i = 0; i < namechar.count(); i++)

else

} 可以告訴你,沒有關聯查一個表還行,兩個表都來不太可能。

22樓:矽谷少年

下面語句檢索test_column欄位的值包含在字串 『aabbccdd』中的記錄

select * from tt where charindex(test_column,'aabbccdd') > 0 ;

親測可用,找的我好辛苦。

23樓:再見流年

mysql:

用instr函式即可。

select * from ttt t whereinstr(t.ida,t.idb)>0

t.idb 為被包含欄位。

如何用查詢字元的ASCII碼,如何用WORD查詢字元的ASCII碼

複製或輸bai入那個字du,只要能輸入到zhiword文字,無論 輸dao入法 能不能輸入那個字,內word都能夠代換出來容。5929 5929 4e0d 77e5 9053字元 每4個輸入後按alt x就變成了字,再按alt x就還原 只要在word文件出現的文字 除外 都有唯一的 請不要亂改 插...

SQL語句如何查詢某符串欄位長度等於某個值的所有記錄

可以使用length 函式。比如我這張表。select from test where length name 5。如圖 拓展知識len 函式 len 函式返回文字欄位中值的長度。sql len 語法 select len column name from table name mysql 中函式為...

如何查詢某個資料庫的某個表欄位,SQL資料庫,如何查詢資料庫內含有某一列(某欄位,如name)的所有表

2008沒用過,不懂!不過我覺得應該和2003或者2005是一樣的操作,因為他們都使用的sql語句,變化應該不是很大!select b.name 表名,a.name 欄位名 from syscolumns a join sysobjects b on a.id b.id where b.xtype ...