Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Ersetzen Sie den Vergleich mit der skalaren Unterabfrage durch Inner Join oder Left/Right Join

Anscheinend wollen Sie so etwas:

select radicados.*
from
  radicados
  join estudiantes
    on radicados.asignado = estudiantes.estudianteid
  join usarios
    on estudiantes.usario = usarios.usarioid
  where usarios.nombre = $nombre_usuario

Beginnen Sie beim Erstellen einer solchen Abfrage mit FROM Klausel. Verbinden Sie die verschiedenen Tabellen, die die benötigten Daten enthalten, basierend auf den Beziehungen zwischen ihnen. Fügen Sie bei Bedarf ein WHERE hinzu -Klausel, die alle zusätzlichen Bedingungen beschreibt, nach denen Sie das Ergebnis Ihres Joins filtern möchten. Dann füllen Sie das SELECT aus entsprechend auflisten.

Unter Umständen müssen Sie auch andere Klauseln hinzufügen (ORDER BY , GROUP BY , etc.), aber das ist nicht schlecht, wenn Sie grundlegende Abfragen verstehen.