求这个sql 怎么写?

li_harry 2017-09-13 08:38:28
a表
id order
1 cpio textxx
2 mkdir dfa

b表
command color
cp 蓝
cpio 红
要求查询出a表中包含有b表中command的order数据。
我之前是这样写的select * from a where locate(b.command,a.order)=1本来数据都是正常的,结果当b表中出现cp和cpio这样都包含cp的情况时,查询结果就是:
id order
1 cpio textxx
2 cpio textxx
一条数据匹配了两次,数据出现重复,请问有谁能帮忙解决一下
...全文
166 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
li_harry 2017-09-14
  • 打赏
  • 举报
回复
引用 1 楼 ACMAIN_CHM 的回复:
b.command 后加个空格然后再匹配。
试了一下,没有效果啊
ACMAIN_CHM 2017-09-14
  • 打赏
  • 举报
回复
b.command 后加个空格然后再匹配。
ACMAIN_CHM 2017-09-14
  • 打赏
  • 举报
回复
locate(concat (b.command,' ') ,a.order)=1 估计是不知道怎么加空格。

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧