Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Samodzielne łączenie SQL w celu zwrócenia określonych wierszy

SELECT  mm.*, md.label AS standardized_label
FROM    mytable md
LEFT JOIN
        mytable mc
ON      mc.parent_element = md.id
        AND mc.client = @client
JOIN    mytable mm
ON      mm.id = COALESCE(mc.id, md.id)
WHERE   md.client IS NULL

Utwórz indeks na (client, parent_element) aby to działało szybko.

Zobacz SQLFiddle .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sortowanie wartości null na końcu

  2. kara wydajności ciągów jako kluczy podstawowych?

  3. Najlepszy sposób na przechowywanie/wyświetlanie dat w różnych strefach czasowych w PHP?

  4. ignoruj ​​zduplikowane wyniki z pętli foreach przechodzącej przez zapytanie mysql

  5. Konwersja Mysqli do PDO