hallo ik heb een join waarbij ik de waardes die overeenkomen in tabel A en B worden opgehaald. Wat ik nu wil is dat de waardes uit tabel A worden opgehaald min de waardes (die overeen komen) die al vermeld zijn in tabel B
dus in tabel A staat
id 1,2,3,4,5
en tabel B staat
id 1,4
de uitkomst moet dan 2,3,5 zijn
Kan iemand mij vertellen hoe ik dit het beste kan aanpakken?
dit is de code die ik nu heb.
<?php
//gegevens uit tabel weergeven in drop down menu
$query_werknemer="SELECT * FROM werknemers INNER JOIN werknemers_in_gebruik ON werknemers.msg_werknemers_id = werknemers_in_gebruik.msg_werknemers_id ";
$result_werknemer = mysql_query($query_werknemer) or die(mysql_error());
Elke pagina in mijn website krijgt een int_id mee waarmee bepaald word welke content hij op moet halen.
De uitkomst voor pagina met int_id 30 is
peter
jaap
karel
Ik heb al diverse manieren uit geprobeerd
1) hierbij worden alle namen weergegeven totdat er de id nr 1 in de tabel werknemers_in_gebruik staat vermeld. Op dat moment wordt er namelijkhelemaal niks meer weergegeven.
<?
$query_werknemer="SELECT *
FROM werknemers
WHERE NOT EXISTS (SELECT *
FROM werknemers_in_gebruik
WHERE msg_werknemers_id=1 AND msg_int_id = 5)";
?>
2) Hierbij wordt helemaal niks weergegeven
<?
$query_werknemer="SELECT werknemers.*
FROM werknemers
LEFT JOIN werknemers_in_gebruik
ON werknemers.msg_werknemers_id=werknemers_in_gebruik.msg_werknemers_id
WHERE
werknemers_in_gebruik.msg_werknemers_id IS NULL AND werknemers_in_gebruik.msg_int_id= 5 ";
?>
3) geeft ook niks weer
<?
$query_werknemer="SELECT DISTINCT msg_v_naam
FROM werknemers
RIGHT JOIN werknemers_in_gebruik ON werknemers.msg_werknemers_id=werknemers_in_gebruik.msg_werknemers_id AND werknemers_in_gebruik.msg_int_id <> 30";
?>
is het niet mognelijk om eerst alle waarde op te halen en dan de waarde die al in tabel werkenmers_in_gebruik af te trekken van de uikomst?
Ik hoop dat iemand hier nu een oplossing voor me heeft, of een goed script weet. Ik kom er namelijk echt niet meer uit
Ik heb de code van Kalle geprobeerd
<?
$query_werknemer="SELECT *
FROM
werknemers
WHERE
msg_werknemers_id <> {
SELECT
msg_werknemers_id
FROM
werknemers_in_gebruik
WHERE
msg_int_id = 5
}";
?>
krijg ik de error:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT msg_werknemers_id FROM werknemers_in_g' at line 6
<?
$query_werknemer="
SELECT
jouwding1, jouwding
FROM
werknemers
WHERE
msg_werknemers_id
NOT IN(
SELECT
msg_werknemers_id
FROM
werknemers_in_gebruik
WHERE
msg_int_id = 5
)";
?>