In mySQL ist mein Tisch animals
:Wie kann ich die Werte aus einer Tabelle markieren, die nicht in einer anderen Tabelle (mySQL) sind?
+-----------+--------+--------+
| animal_ID | name | animal |
+-----------+--------+--------+
| 1 | alan | dog |
| 2 | sam | frog |
| 3 | marion | cat |
| 4 | george | rabbit |
| 5 | bob | bird |
+-----------+--------+--------+
und das ist mein Tisch orders
+----------+-----------+
| date | animal_ID |
+----------+-----------+
| 02.03.16 | 4 |
| 12.04.16 | 3 |
| 18.07.16 | 1 |
+----------+-----------+
ich alle Tiere aufgelistet werden sollen, aber die Tiere markieren, die nicht in der Tabelle orders sind rot. Das ist mein erwartetes Ergebnis
<table >
<tr>
<td>alan</td>
</tr>
<tr>
<td style="color:red">sam</td>
</tr>
<tr>
<td>marion</td>
</tr>
<tr>
<td>george</td>
</tr>
<tr>
<td style="color:red">bob</td>
</tr>
</table>
ich jetzt das Problem haben, dass ich weiß nicht, wie alle Tiere zur Liste aus dem Tiertisch, bekomme ich nur die Tiere in meiner Liste, die nicht in der Auftragstabelle:
$sql = 'SELECT * FROM animals a WHERE EXISTS (SELECT * FROM orders o WHERE o.animal_ID = a.animal_ID)';
Hier ist mein Ergebnis folgt aus:
<table >
<tr>
<td>alan</td>
</tr>
<tr>
<td>marion</td>
</tr>
<tr>
<td>george</td>
</tr>
</table>
Einfach aus der Tabelle "Tiere" abfragen und ausdrucken und auch in der Tabelle 'order' nachschauen, ob es in der Tabelle ist oder Ihnen eine Ausgabe gibt, dann fügen Sie den roten Stil hinzu. –
Mögliches Duplikat von [Wie überprüft man, ob jeder Primärschlüsselwert in einer anderen Tabelle als Fremdschlüssel referenziert wird] (http: // stackoverflow.com/questions/39761363/how-to-check-wenn-jeder-Primärschlüssel-Wert-ist-wird-als-fremd-Schlüssel-in-ein-referenziert) – e4c5
@ AT-2016 Ja, die Namen der Tiere – Jarla