Hallo,

Ik zit met een probleem waar ik niet uit kom. Ik probeer van 2 kolommen in 2 verschillende tabellen de unieke waardes te krijgen.

In de tabellen staat dit:


Tabel1
kolomnummera

11
11
11
22



Tabel2
kolomnummerb

33
44
44
11




Met:
$query = "SELECT count(DISTINCT(kolomnummera)) FROM Tabel1";
$result = mysql_fetch_array(mysql_query($query));
$nummer1 = $result[0];

Krijg ik dus als uitput dat er 2 unieke waardes in de tabel staan.


En met:
$query = "SELECT count(DISTINCT(kolomnummerb)) FROM Tabel2";
$result = mysql_fetch_array(mysql_query($query));
$nummer2 = $result[0];

Krijg ik dus als uitput dat er 3 unieke waardes in de tabel staan.


Nu wil ik beide tabellen op 1 grote hoop gooien en daarvan de unieke waardes achterhalen.
De uitkomst zou dus 4 moeten zijn.

Iemand enig idee hoe ik dit voor elkaar kan krijgen?

Bedankt.

Gr,

Daan
Wellicht met een UNION? Daarmee kun je resultsets (de resultaten van verschillende queries) combineren.
De UNION had ik ook gevonden. Ik heb alleen geen idee hoe ik deze moet toepassen icm een DISTINCT.
De UNION laat vanzelf duplicaten uit het resultaat, tenzij je UNION ALL doet, dus als je de Union in een subquery zet kan je daarover tellen:

SELECT COUNT(1) aantal
FROM
(SELECT kolomnummera
FROM tabel1
UNION
SELECT kolomnummerb
FROM tabel2
) s
Bedankt. Hier kan ik wat mee.

Reageren