mysql - 如何用sql语句,判断数据库中某字段的内容,包含于某字符串?
高洛峰
高洛峰 2017-04-17 11:06:11
0
5
881

如何用sql语句,判断数据库中某字段的内容,包含于某字符串?也就是属于某字符串的子串?
比如数据库中某字段内容为“张三”,某字符串是“张三是好人”,则符合条件,
如果数据库中某字段内容为“张三”,某字符串是“张”,则不符合条件,

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回覆(5)
黄舟
select * from table t where t.a like '%'||t.b||'%';
select * from table t where t.a like '%'||var||'%'

(PL/SQL, 字段a和b要求必須是字符串類型, var為程序中的字符串變量,或者更精確的匹配可以用正則,不過方法相同都是通過字符串拚接)

大家讲道理
where "%张三% like column_name

sry 上麵這個寫反了,應該是下麵這樣,如果不是mysql,拚接的方法可能不一樣。

where '张三' like concat('%', column_name, '%')
左手右手慢动作

SELECT *
FROM aaa
where instr('$var',aaa.city)

這是我從網上找到的,發現可以用。

伊谢尔伦

雷雷

洪涛

用一個concat函數吧,可以將你要匹配的變量弄成一個類似正則表達式的東西,來舉栗子:表user中有倆字段,一個叫username,一個叫password,假如你先在要找到password中包含username的行,可以這樣寫:

select username,password from user where password like concat('%',username,'%');
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板