sql判断字段是否以某个子串开头,结尾

本文探讨了在SQL中如何判断字段是否以特定子串开头或结尾的方法。介绍了like关键字、left()函数、right()函数、position()函数和strpos()函数的使用,并分析了它们在开头和结尾判断上的适用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

问题现象:

问题分析:

解决方法:


问题现象:

今天在学习中思考了这样一个问题:

        如何判断字段是否以某个子串开头或结尾?


问题分析:

通过查阅资料和学习,总结出来以下几个方法:

1.like关键字

SELECT * FROM car WHERE car.type like '中国%' ; //查询在 car表中 type字段 以 '中国' 开头的记录

SELECT * FROM car WHERE car.type like '%中国' ; //查询在 car表中 type字段 以 '中国' 结尾的记录

2.left()函数

SELECT * FROM car WHERE LEFT(car.type , 2) = '美国' ; //查询在 car表中 type字段 以 '美国' 开头的记录

3.right()函数

SELECT * FROM car WHERE RIGHT(car.type , 2) = '美国' ; //查询在 car表中 type字段 以 '美国' 结尾的记录

4.position()函数

SELECT * FROM car WHERE position( '法国' in car.type ) = 1 ; //查询在 car表中 type字段 以 '法国' 开头的记录

5.strpos()函数

SELECT * FROM car WHERE position( car.type , '德国' ) = 1 ; //查询在 car表中 type字段 以 '德国' 开头的记录


解决方法:

1.like关键字 可以判断 开头 和 结尾

3.right()函数 只能判断 结尾 ,无法判断 开头

2.left()函数4.position()函数 和 5.strpos()函数 只能判断开头, 无法判断结尾.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值