比如 表A:
id keywords
1 小猫 小狗 大鱼
2 小熊 小猫 小兔子
3 小鸟 小狗 小猫
4 小狗 小熊 大鱼
执行select * form A where keywords like '%小猫%'; 返回:
id keywords
1 小猫 小狗 大鱼
2 小熊 小猫 小兔子
3 小鸟 小狗 小猫
执行 select * form A where keywords like '%小狗%';
id keywords
1 小猫 小狗 大鱼
3 小鸟 小狗 小猫
4 小狗 小熊 大鱼
想取其中的交集得到
id keywords
1 小猫 小狗 大鱼
3 小鸟 小狗 小猫
如何实现呢?各位???多谢了!
6 个解决方案
#1
查询1:
select * form A where keywords like '%小猫%'
查询2:
select * form A where keywords like '%小狗%'
select * from 查询1 a inenr join 查询2 on a.keywords=b.keywords
select * form A where keywords like '%小猫%'
查询2:
select * form A where keywords like '%小狗%'
select * from 查询1 a inenr join 查询2 on a.keywords=b.keywords
#2
直接用LIKE '%小猫%' AND LIKE '%小狗%'不行?
#3
TO 2L
select * from (select * from A where keywords like '%小猫%') AS a inner join (select * from A where keywords like '%小狗%') AS b a.keywords=b.keywords;
这样可以成功
直接用LIKE '%小猫%' AND LIKE '%小狗%'试过,不行。
如果不只两个查询怎么办?这里关键字是两个,如果是三个或更多,有无办法取到交集?
select * from (select * from A where keywords like '%小猫%') AS a inner join (select * from A where keywords like '%小狗%') AS b a.keywords=b.keywords;
这样可以成功
直接用LIKE '%小猫%' AND LIKE '%小狗%'试过,不行。
如果不只两个查询怎么办?这里关键字是两个,如果是三个或更多,有无办法取到交集?
#4
直接用LIKE '%小猫%' AND LIKE '%小狗%'试过,不行。
SELECT * from tt1 where keywords LIKE '%小猫%' AND [keywords] LIKE '%小狗%'
得到1、3记录
SELECT * from tt1 where keywords LIKE '%小猫%' AND [keywords] LIKE '%小狗%'
得到1、3记录
#5
可以了,上次可能是语法不对,谢谢LS的~
#6
呵呵,解决了吗?结贴吧
#1
查询1:
select * form A where keywords like '%小猫%'
查询2:
select * form A where keywords like '%小狗%'
select * from 查询1 a inenr join 查询2 on a.keywords=b.keywords
select * form A where keywords like '%小猫%'
查询2:
select * form A where keywords like '%小狗%'
select * from 查询1 a inenr join 查询2 on a.keywords=b.keywords
#2
直接用LIKE '%小猫%' AND LIKE '%小狗%'不行?
#3
TO 2L
select * from (select * from A where keywords like '%小猫%') AS a inner join (select * from A where keywords like '%小狗%') AS b a.keywords=b.keywords;
这样可以成功
直接用LIKE '%小猫%' AND LIKE '%小狗%'试过,不行。
如果不只两个查询怎么办?这里关键字是两个,如果是三个或更多,有无办法取到交集?
select * from (select * from A where keywords like '%小猫%') AS a inner join (select * from A where keywords like '%小狗%') AS b a.keywords=b.keywords;
这样可以成功
直接用LIKE '%小猫%' AND LIKE '%小狗%'试过,不行。
如果不只两个查询怎么办?这里关键字是两个,如果是三个或更多,有无办法取到交集?
#4
直接用LIKE '%小猫%' AND LIKE '%小狗%'试过,不行。
SELECT * from tt1 where keywords LIKE '%小猫%' AND [keywords] LIKE '%小狗%'
得到1、3记录
SELECT * from tt1 where keywords LIKE '%小猫%' AND [keywords] LIKE '%小狗%'
得到1、3记录
#5
可以了,上次可能是语法不对,谢谢LS的~
#6
呵呵,解决了吗?结贴吧