我有以下表格:
| id | name |
|-------|--------|
| 00001 | Item A |
| 00001 | Item A |
| 00002 | Item B |
| 00003 | Item C |
| 00004 | Item C |
如果我想检查2个或更多不同ID的名称是否相同,我应该使用哪个MySQL查询?我在我的查询中尝试使用LEFT JOIN
和UNION
,但我无法让它工作。所以在这种情况下,查询应返回:
| id | name |
|-------|--------|
| 00003 | Item C |
| 00004 | Item C |
提前致谢。
答案 0 :(得分:2)
如果要返回原始行,则需要join
返回原始数据:
select t.*
from t join
(select name, count(distinct id) as cnt
from t
group by name
) tt
on t.name = tt.name
where cnt >= 2;
如果您只想要名称,那么子查询就足够了(带有having
子句)。
答案 1 :(得分:0)
与自己ON
相同的name
和不同的id
加入表格。
<强>查询强>
select t1.id,t1.name
from tbl1 t1
join tbl1 t2
on t1.id <> t2.id
and t1.name = t2.name;
答案 2 :(得分:0)
你尝试过这样的事吗?
SELECT *
FROM table_name
GROUP BY name
HAVING count(DISTINCT id) > 1
答案 3 :(得分:0)
试试这个
shared.setValue('somevalue');
答案 4 :(得分:0)
Yourview.setOnTouchListener(new OnTouchListener() {
// Setting on Touch Listener for handling the touch inside
// ScrollView
@Override
public boolean onTouch(View v, MotionEvent event) {
// Disallow the touch request for parent scroll on touch of
// child view
v.getParent().requestDisallowInterceptTouchEvent(true);
return false;
}
});
答案 5 :(得分:0)
试试这个..
select id, name from customers where name in
(select name from customers group by name having count(*) > 1)