sql 查询语句中如何过滤指定的字符?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 查询语句中如何过滤指定的字符?相关的知识,希望对你有一定的参考价值。

参考技术A

1、语句:SELECT * FROM dbo.Products WHERE prod_name='king doll' AND prod_price>8。

--检索dbo.Products表中所有列,过滤条件为由供应商king doll制造价格大于8的所有商品。

注意:--后面的字符是这条语句的注释,这条语句有两个条件,分别用AND关键字联接在一起,并且过滤结果必须满足这两个条件,如果只满足其中一个该数据不会被检索出来。

2、OR操作符(或)

语句:SELECT * FROM dbo.Products WHERE prod_name='king doll' OR prod_price>8。

--检索dbo.Products表中所有列,过滤条件为由供应商king doll制造价格大于8的所有商品值。

注意:--这里要说明的是OR操作符与AND操作符的不同之处是只要满足其中一个条件,数值就会被检索出来,例如:由供应商king doll制造价格小于8商品或者由供应商king add制造价格大于8的商品只要其中一个条件符合,数据就被检索出来。

3、IN操作符(指定条件范围)

语句:SELECT * FROM dbo.Products WHERE prod_name IN ('king doll' ,'Queen dool')。

--检索dbo.Products表中所有列,过滤条件为由供应商king doll和Queen dool制造的商品。

注意:它的功能其实和OR一样,但是它的执行速度会更快并且简洁,最大的优点是可以包含其他SELECT语句,能够更动态地建立WHERE字句。

如何写sql 语句,能删除字段中某个字符到最后字符串的?

sqlserver的话用charindex截取到你要的字符位置,用left函数截取,后面的自然就没了
left(col,charindex('字符',col)-1)
-----------------
删除指定字符到指定的其他字符,要用stuff函数
stuff(col,charindex('字符',col),charindex('其他字符',col)-charindex('字符',col)+1,'')
不知道你包含不包含这两个字符,上面的语句是同时去除两个字符的,若不去除
stuff(col,charindex('字符',col)+,charindex('其他字符',col)-charindex('字符',col)-1,'')
参考技术A 你是什么数据库?mysql
按照第一个*号前面的字符串分组
然后汇总
select
a,sum(b)
from
pppppp.tablename1
group
by
substring_index(a,'*',1)
limit
0,
50
按照第二个*前面的字符串分组
然后汇总
select
a,sum(b)
from
pppppp.tablename1
group
by
substring_index(a,'*',2)
limit
0,
50
参考技术B declare@avarchar(50)
set@a='2009年7月15日星期五'
selectsubstring(@a,1,4)
--获取年份2009
declare@bint
set@b=patindex('%日%',@a)
--获取'日'这个字符在字符串中的位置,即10
selectsubstring(@a,6,@b-5)
--获取日期'7月15日'

以上是关于sql 查询语句中如何过滤指定的字符?的主要内容,如果未能解决你的问题,请参考以下文章

数据库笔记-SQL过滤(LIKE&正则表达式)

SQL语句怎样查询一个范围

sql语句查询过滤重复数据

HiveQL SELECT语句查询

sql语句,如何截取指定字段某一个字符出现后的后面的字符串吗

sql语句去重