SQL 查询问题,有一个表格
ID code
46 苹果
46 香蕉
48 苹果
我想做两种条件的查询结果 一是包含“苹果”的ID 即46 二个是 只有“苹果”的ID 结果是48,这个SQL语写怎么写?请大家指导一下,谢谢
第一种:select ID from XXXX where code like '%苹果%'
第二种:select ID from XXXX where code = '苹果'
【以下回答由 GPT 生成】
-- 查询包含“苹果”的ID
SELECT DISTINCT ID
FROM 表格名
WHERE code LIKE '%苹果%';
-- 查询只包含“苹果”的唯一ID
SELECT ID
FROM 表格名
GROUP BY ID
HAVING SUM(CASE WHEN code <> '苹果' THEN 1 ELSE 0 END) = 0;
解释:
查询包含“苹果”的ID,使用LIKE
条件来模糊匹配包含“苹果”的code值,并使用DISTINCT
关键字去重。
查询只包含“苹果”的唯一ID,使用GROUP BY
对ID进行分组,并使用SUM
函数和CASE WHEN
条件判断,筛选出只包含“苹果”的ID。
【相关推荐】