webForumDet fria alternativet

Mysql query (php)

1 svar · 989 visningar · startad av SoulGod

SoulGodMedlem sedan aug. 20051 200 inlägg
#1

Jag har problem att bygga en SQL-fråga, och tänkte kolla om någon av er har koll :)

Jag har en tabell som innehåller två kolumner (t_id & m_id).
Först har jag denna kod:

<?PHP 
	//GET THE VISITORS OF THE TASTING
	$query_v = "SELECT * FROM `tastings2members` WHERE t_id='$stringid'";
	$result_v = $mysqli->query($query_v) or die($mysqli->error.__LINE__);

	// GOING THROUGH THE DATA
	echo "<h2>Participating Members</h2>";
	if($result_v->num_rows > 0) {
		while($row_v = $result_v->fetch_assoc()) {
// ---------------------
			$string2 = $row_v['m_id'];
			$query2 = "SELECT * FROM `members` WHERE m_id=$string2";
			$result2 = $mysqli->query($query2) or die($mysqli->error.__LINE__);		
		
	// GOING THROUGH THE DATA
			if($result2->num_rows > 0) {
				while($row2 = $result2->fetch_assoc()) {
				echo $row2['name'];
				echo "<a href='admin_delete_participant.php?t_id=".$stringid."&m_id=".$row2['m_id']."'>";
				echo "<img src='img/delete.gif'>";
				echo "</a>";
				echo "<br />";
				}
			}			
} } else { echo 'NO RESULTS'; } ?>

Jag vill nu bygga en sql-sats som hämtar alla som har samma t_id ($stringid) - precis som ovan. Men del två efter det som hämtar alla m_id som var med,
nu vill jag hämta alla m_id som INTE finns med tillsammans med samma t_id...

Och jag blir inte klok på hur :(

SoulGodMedlem sedan aug. 20051 200 inlägg
#2

Lösningen är MySQL JOIN

	$query_nv = "SELECT * FROM `members` WHERE m_id NOT IN
       ( SELECT m_id FROM `tastings2members` WHERE t_id='$stringid') ";
132 ms totalt · 3 externa anrop · v20260731065814-full.beb2e261
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)