表如下(name:relation)
======================
uid pid
1 test1
1 test2
1 test3
2 test1
...现在想查询出 pid有test1和test2的所有的uid
大家有什么好的解决方案么?
======================
uid pid
1 test1
1 test2
1 test3
2 test1
...现在想查询出 pid有test1和test2的所有的uid
大家有什么好的解决方案么?
解决方案 »
- mysql
- 用Mysql LOAD DATA导入数据时,是否要求源文本字段数量和表中列字段的一样多?
- 如何给一个Mysql用户添加可以创建触发器的权限
- hi, 如果uid 属于某个集合要怎么写?
- windows 下如何让 PHP MySQL 使用命名管道连接?
- 我敲mysql确显示"Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'(2)";刚才那个没分了,用这个,SORRY
- 如何在已经存在的表中增加一个字段?????
- 求学习MySQL书籍下载地址,帮我UP也给分
- MySql 中的触发器
- sql语句实现
- 求个UPDATE的SQL语句,把一行信息的2个字段增加到一个字段里
- C语言连接MySQL,在一个mian函数里没事,放到单独的函数里就运行时出错。
test1或test2
SELECT DISTINCT "UID" FROM relation WHERE REGEXP_LIKE(pid, 'test[12]');test1和test2
SELECT a.aid
FROM (SELECT DISTINCT "UID" aid FROM relation WHERE TRIM(pid) = 'test1') a,
(SELECT DISTINCT "UID" bid FROM relation WHERE TRIM(pid) = 'test2') b
WHERE a.aid = b.bid;
如果条件过多,比如不只是test1,test2这么两箱,二十十几甚至二十几个,test1,test2,test3..... 这样的话数据库的语句会特别的长。
select count(uid) as c, uid from relation where pid in ('test1', 'test2')
group by uid
having count(uid)=2