You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写SQL WHERE子句筛选名称含Computer与Science的部门编号?

解决方法:匹配包含两个关键词的部门名称

嘿,这个需求很容易实现,我们只需要利用SQL的通配符和逻辑判断就能搞定。核心思路是确保deptname字段同时包含"Computer"和"Science"这两个词,不管它们之间有没有其他内容、顺序如何。

基础写法(不区分关键词顺序)

最直接的方式是用两个LIKE条件加上AND逻辑连接,这样就能保证两个关键词都存在:

WHERE deptname LIKE '%Computer%' AND deptname LIKE '%Science%'

这里的%是SQL里的通配符,代表任意长度的任意字符(包括空字符),所以%Computer%会匹配所有包含"Computer"的部门名称,同理%Science%匹配包含"Science"的,两者结合就筛选出同时包含两个词的记录。

大小写不敏感的写法(可选)

如果你的数据库默认区分大小写(比如PostgreSQL),可以用LOWER()或UPPER()函数统一转换大小写,避免因为关键词大小写不同导致漏匹配:

WHERE LOWER(deptname) LIKE '%computer%' AND LOWER(deptname) LIKE '%science%'

额外补充:如果要求关键词顺序固定

要是你之后需要确保"Computer"出现在"Science"之前(比如只匹配类似"Computer and Science"、"Computer Applied Science"的名称),可以把两个关键词放在同一个LIKE里:

WHERE deptname LIKE '%Computer%Science%'

内容的提问来源于stack exchange,提问作者user8420047

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 04:11:05