Ⅰ sql中包含字元串的問題。
迫切的等待答案中~~~
--補充---------------------
通過函數返回一個值來作為查詢條件就OK了。。
代碼:
CREATE
FUNCTION
AAA(@S1
VARCHAR(1000),@S2
VARCHAR(1000))
RETURNS
INT
AS
BEGIN
DECLARE
@I
INT,@S
VARCHAR(1000),@S3
VARCHAR(1000)
SET
@I=0
SET
@S3=@S1
WHILE
@S3<>''
BEGIN
IF
CHARINDEX(',',@S3)>0
SET
@S=SUBSTRING(@S3,1,CHARINDEX(',',@S3))
ELSE
SET
@S=@S3+','
IF
CHARINDEX(@S,@S2+',')>0
SET
@I=@I+1
SET
@S3=SUBSTRING(@S3,LEN(@S)+1,LEN(@S3))
END
RETURN
@I
END
SELECT
*
FROM
A
WHERE
DBO.AAA(A,'105,205,305,405,505')
BETWEEN
3
AND
4
A是你需要查找的表名
函數裡面的A就代表你需要和'105,205,305,405,505'這個比較的欄位名
Ⅱ sql 怎麼判斷一個字元串包含在另一個字元串
三、取子串函數
1、left()
LEFT(<character_expression>,<integer_expression>)
返回character_expression左起integer_expression個字元。
2、RIGHT()
RIGHT(<character_expression>,<integer_expression>)
返回character_expression右起integer_expression個字元。
3、SUBSTRING()
SUBSTRING(<expression>,<starting_position>,length)
返回從字元串左邊第starting_position個字元起length個字元的部分。
四、字元串比較函數
1、CHARINDEX()----這個應該是你想要的函數!!
返回字元串中某個指定的子串出現的開始位置。
CHARINDEX(<』substring_expression』>,<expression>)
其中substring_expression是所要查找的字元表達式,expression可為字元串也可為列名表達式。如果沒有發現子串,則返回0值。
此函數不能用於TEXT和IMAGE數據類型。
2、PATINDEX()
返回字元串中某個指定的子串出現的開始位置。
PATINDEX(<』%substring_expression%』>,<column_name>)其中子串表達式前後必須有百分號「%」否則返回值為0。
與CHARINDEX函數不同的是,PATINDEX函數的子串中可以使用通配符,且此函數可用於CHAR、VARCHAR和TEXT數據類型。
Ⅲ sql語句包含字元串
select * from yourTable where yourField like '%A%B%'
是這個意思嗎
Ⅳ sql查找包含某些字元的列
1、首先創建模擬數據源表。
Ⅳ sql常用的字元串函數都有哪些
常用的字元串函數有:
一、字元轉換函數
1、ASCII()
2、CHAR()
3、LOWER()和UPPER()
4、STR()
二、去空格函數
1、LTRIM() 把字元串頭部的空格去掉。
2、RTRIM() 把字元串尾部的空格去掉。
三、取子串函數
1、left()
2、RIGHT()
3、SUBSTRING()
四、字元串比較函數
1、CHARINDEX()
2、PATINDEX()
五、字元串操作函數
1、QUOTENAME()
2、REPLICATE()
3、REVERSE()
4、REPLACE()
4、SPACE()
5、STUFF()
六、數據類型轉換函數
1、CAST()
2、CONVERT()
七、日期函數
1、day(date_expression)
2、month(date_expression)
3、year(date_expression)
4、DATEADD()
5、DATEDIFF()
6、DATENAME()
7、DATEPART()
8、GETDATE()
Ⅵ 如何SQL查詢欄位值包含於字元串
1、我們新建查詢後,寫上Select關鍵字。
Ⅶ sql語句中查找某欄位中含有某字元串的語句怎麼寫
select filename from oa_file where filename not like '%[!-¥]%'
或者這個:
select filename from oa_file where filename not like '%[!-?]%'
出現的問題就是問號和問好也是不一樣的,比如說英文標點半形的問號是「?」,英文標點全形的問號是「?」但是中文半形問號是「?」中文全形的問號是「?」
這些都是不一樣的,你搜出來的都是帶有英文半形問號的文件。
(7)sql包含字元串函數擴展閱讀:
SQL中的欄位「包含」與「包含於」字元串的寫法
1、查詢表中某欄位值「包含」某字元串的所有記錄的方法
假如表中有一個name欄位,查詢name包含「張三」的所有記錄,可以這樣寫sql:
Stirng strsql="SELECT * FROM 表名 WHERE name LIKE 』%"+"張三"+"%』";
2、查詢某欄位值「包含於」某個字元串的所有記錄的方法
如果查詢表中name欄位包含於字元串「張三是個好學生」的所有記錄,可以這樣寫sql:
String strsql="SELECT * FROM 表名 WHERE INSTR(』張三是個好學生』,name)>0";
即可查詢,記錄中的name欄位值中包括:張、三、是、個、好、學、生、張三、......等所有記錄。
註:以上sql字元串中請將全形符號改為半形符號。
Ⅷ sql查詢包含字元串任意字元
1、先把你輸入的內容拆分
2、select * from table where name like '%小%' or name like '%明%'
3、出來的結果就是你要的結果
Ⅸ 現在用sql語句查出來欄位里包含某個字元串的所有記錄怎麼查
select * from tableName where fieldName like '%包含的字元串%'
Ⅹ 在sql語句中怎麼判斷一個欄位是否包含在另一個字元串中
思路是,讀取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++)
{
if (i == 0)
{
SqlStr += "where A.name LIKE'%" + NameChar[0] + "%'";
}
else
{
SqlStr += " and A.name LIKE'%" + NameChar[i] + "%'";
}
}
可以告訴你,沒有關聯查一個表還行,兩個表都來不太可能。