Unieke waardes uit 2 verschillende kolommen.
Daan de Jong
06/04/2015 14:10:49Hallo,
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
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
PHP hulp
16/11/2024 13:23:39Thomas van den Heuvel
06/04/2015 17:03:26Wellicht met een UNION? Daarmee kun je resultsets (de resultaten van verschillende queries) combineren.
Daan de Jong
07/04/2015 09:58:23De 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
SELECT COUNT(1) aantal
FROM
(SELECT kolomnummera
FROM tabel1
UNION
SELECT kolomnummerb
FROM tabel2
) s