mein Tisch:Auswählen alle Zeilen mit nur einem Wert in der Spalte mit einem anderen gemeinsamen Wert
drop table if exists new_table;
create table if not exists new_table(
obj_type int(4),
user_id varchar(30),
payer_id varchar(30)
);
insert into new_table (obj_type, user_id, payer_id) values
(1, 'user1', 'payer1'),
(1, 'user2', 'payer1'),
(2, 'user3', 'payer1'),
(1, 'user1', 'payer2'),
(1, 'user2', 'payer2'),
(2, 'user3', 'payer2'),
(3, 'user1', 'payer3'),
(3, 'user2', 'payer3');
Ich all Zahler-ID, dessen obj_type ist nur ein Wert wählen versuche und keine andere Werte. Mit anderen Worten, obwohl jeder Zahler mehrere Benutzer hat, möchte ich nur die Zahler, die nur einen obj_type verwenden.
Ich habe versucht, eine Abfrage wie folgt aus:
select * from new_table
where obj_type = 1
group by payer_id;
Aber diese Zeilen zurück, auch deren Zahler haben andere Benutzer mit anderen obj_types. Ich versuche, ein Ergebnis zu erhalten, das wie folgt aussieht:
obj | user | payer
----|-------|--------
3 | user1 | payer3
3 | user2 | payer3
Vielen Dank im Voraus.
Beitrag ein Beispiel von dem, was Ihr Ausgangs sollte sein. – justiceorjustus