Ⅰ 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] + "%'";
}
}
可以告诉你,没有关联查一个表还行,两个表都来不太可能。