mysql - 你知道如何在 mysql where 子句中包含和排除部分字符串吗?
问题描述
我在 where 子句中使用 and/or/not 运算符来创建以下逻辑时遇到问题。
我有一个名为 package 的字段,其中列出了许多不同的包名称,我需要根据以下规则专门包含/排除:
如果一个包的名称中包含续订、选择退出或折扣,并且名称中也不包含溢价,则需要从数据集中排除这些名称。(因此,如果一个包的名称和溢价一词中有续订、选择退出或折扣,这些都包含在数据集中)
此外,需要排除任何与员工或 Comp 相关的内容。
上述规则中未列出的任何其他内容都将包含在数据集中。
任何帮助将不胜感激并将其添加到我的 sql 工具带中!
解决方案
听起来像:
SELECT *
FROM packages
WHERE name NOT LIKE '%employee%'
AND name NOT LIKE '%Comp%'
AND (name NOT LIKE '%renew%' OR name NOT LIKE '%optout%' OR name NOT LIKE '%discount%') OR name LIKE '%premium%')
推荐阅读
- python - 带有 WebRTC 的 OpenCV python 建模服务器
- c++ - 如何将python dict发送到C++
- reactjs - reactjs中同步调用函数
- python - 将我自己的函数导入 Azure 计时器触发器
- android - libav sws_scale() 在真实设备上的色彩空间转换失败,适用于模拟器
- apache-kafka - 当来自 kafka 的消息被读取为 Ktable 时,当它被读取为 Kstreams 并转换为 Ktable 时?
- intellij-idea - 忽略 Intellij/Pycharm 搜索的排除目录中的文件
- java - 使用 brew 启动 cassandra 时出错,显示以黄色开始
- iphone - 定位服务的应用程序权限弹出窗口从不显示在屏幕录制的视频中
- python - 在 Jupyter Notebook 中可视化决策树