sql >> Database >  >> RDS >> Mysql

Mysql:tabellen samenvoegen voor vertaalrecords

Blijf gewoon left joins doen naar dezelfde tabel op de ID, maar extra kolommen die hun taal vertegenwoordigen...

Bewerkt om Engels weer te geven als er geen waarde is in corresponderende kolommen per opmerkingsverzoek.

select 
      eng.id,
      eng.translated_text InEnglish,
      coalesce( spn.translated_text, eng.translated_text ) InSpanish,
      coalesce( frn.translated_text, eng.translated_text )  InFrench
   from
      translation eng
         left join translation spn
            on eng.id = spn.id
            and spn.Language_ID = 2
         left join translation frn
            on eng.id = frn.id
            and spn.Language_ID = 3
   where
      eng.Language_id = 1
   order by 
      eng.id



  1. Verbind postgreSQL+postGIS docker-container vanuit mijn lokale netwerk

  2. Laravel 5.5 pivot join om pivot-waarden te krijgen met het belangrijkste MySQL-resultaat

  3. Afbeeldingen opslaan in PostgreSQL

  4. Selecteer een kolom in SQL niet in Group By