![]() |
Datenbank: MySQL • Version: 4/5 • Zugriff über: PHP
SQL-Abfrage gesucht, die Einträge liefert, die nicht da sind
Hallo,
ja der Titel erscheint etwas ungewöhnlich, doch im Prinzip stimmt er schon. Ich habe 2 Tabellen. Eine Tabelle enthält Hinweise, die Benutzer nach einem Login einmalig sehen sollen. Aufgebaut ist die Tabelle in der Art:
Code:
Nun habe ich eine weitere Tabelle angelegt, die speichert, wer den Hinweis bereits gesehen und ggf. zugestimmt hat. Der Aufbau ist dieser:
id | text
Code:
Wenn ein Benutzer einem oder mehreren Hinweise noch nicht zugestimmt hat, existieren für diese in der zweiten Tabelle noch keine Einträge. Sobald zugestimmt wurde, erstelle ich dort einen Eintrag. Nun würde ich gerne ermitteln, welchem Benutzer ich welche Hinweise anzeigen muss.
notice_id | user_id | notice_read | notice_accepted
Ich dachte daran, dass ich die Daten mit den Spalten der zweiten Tabelle erhalte, also bei noch nicht angezeigten/zugestimmten Hinweisen:
Code:
So würden Daten aus der zweiten Tabelle zurückgegeben werden, die nicht existieren (evtl. mit den Standardwerten).
array (
id => 1, text => 'möp', user_id => 5, notice_read => 0, notice_accepted => 0, ) Geht das irgendwie oder wie kann man das schöner machen? Vielleicht ist meine Vorgehensweise auch nicht sinnvoll. Grüße, Matze |
Re: SQL-Abfrage gesucht, die Einträge liefert, die nicht da
Wie sieht deine Abfrage aus?
|
Re: SQL-Abfrage gesucht, die Einträge liefert, die nicht da
Genau die suche ich ja. ;)
Ich hatte an sowas gedacht, doch das funktioniert natürlich nicht:
SQL-Code:
Grüße
SELECT * FROM login_notices ln
JOIN user_login_notices uln ON uln.notice_id = ln.id WHERE uln.user_id = 1 |
Re: SQL-Abfrage gesucht, die Einträge liefert, die nicht da
SQL-Code:
SELECT
* FROM login_notices ln WHERE ln.id not in ( select uln.notice_id from user_login_notices uln where uln.user_id = :user); |
Re: SQL-Abfrage gesucht, die Einträge liefert, die nicht da
Das schaut sehr gut aus, vielen Dank! :)
|
Re: SQL-Abfrage gesucht, die Einträge liefert, die nicht da
Geht aber auch mit nem OUTER JOIN und Einschränkung auf NULL. Siehe
![]() |
Re: SQL-Abfrage gesucht, die Einträge liefert, die nicht da
Das wirkt gleich wieder so unübersichtlich, finde ich. Ich möchte gerne auf den ersten Blick erahnen können, was die Abfrage bewirkt.
Aber ich schau's mir an, danke für den Hinweis. :) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz