SQL中如何精确判断某字段含有某个值?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL中如何精确判断某字段含有某个值?相关的知识,希望对你有一定的参考价值。

比如存在该数据,如果我输入2,就能查询出apply_type里有值'等于'2的这条记录!不要用charindex,也不要用patindex,这些我都想过,达不到要求,只要分割apply_type里面字符等于输入值才能达到我的要求!

参考技术A 变量·@a为你输入的值

select * from tablename where apply_type like '@a,%' or apply_type like '%,@a,%' or apply_type like '%,@a,' ;本回答被提问者采纳
参考技术B select 字段 from 表 where 条件。
下面举一个例子:
倘若你想选出zkyi里面那个“2”

select * from 表 where zkyi=2
参考技术C 这个就要使用到正则来写了,可以自己封装成一个标量函数调用,具体看使用场景

sql 如何判断表中的某个字段是不是有某个值

如有一个表table,里面有个字段列名是 AAAA,有以下值:
AAAA
2
1
3
a
p
w
5
...
如何判断这列数据中是否包含‘1’,如果包含最终输出1,不包含最终输出0

参考技术A 方法一:
select replace(字段名,'E','考察')

replace意思:如果取得字段值是E则替换为"考察"

方法二
Select decode(columnname,值1,翻译值1,值2,翻译值2,...值n,翻译值n,缺省值
参考技术B charindex Sql 内置函数,用法如下:
select top 5 substring(ContactName,charindex(' ',ContactName)+1,len(ContactName)) as [Last Name] from customers   CHARINDEX函数找到First Name和Last Name之间的空格,所以SUBSTRING函数可以分开ContactName列,这样就只有Last Name被选出。在CHARINDEX函数返回的整数上加1,这样Last Name不是从空格开始。
参考技术C Select  Case When AAAA Like'%1%' Then '1' Else '0' End
From table

参考技术D select count(1) from table where aaaa=1
if(sql>0)
return 1;

else
return 0;

第5个回答  2014-08-21 是包含1还是等于1

包含1 和话
$sql = "select * from table where AAAA like '%1%'";
如果查到输出1 否则输出0

包含等于 1和话
$sql = "select * from table where AAAA = '1' ";
如果查到输出1 否则输出0

以上是关于SQL中如何精确判断某字段含有某个值?的主要内容,如果未能解决你的问题,请参考以下文章

sql中如何判断字符串中含有特殊字符

如何SQL查询字段值包含于字符串

sql 判断字段中是不是含有字符

sql中如何查看某一字段值有几个数值

sql 如何判断表中的某个字段是不是有某个值

sql 查询字段中包含回车 如何查出含有回车的字段