Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

mySQL अलग शामिल हों?

इसे आजमाएं:

SELECT     a.locale, c.text AS text_1, d.text AS text_2
FROM       (SELECT DISTINCT locale FROM i18n) a
CROSS JOIN table_1 b
LEFT JOIN  i18n c ON b.text_1 = c.id_i18n AND a.locale = c.locale
LEFT JOIN  i18n d ON b.text_2 = d.id_i18n AND a.locale = d.locale

SQLFiddle डेमो

संपादित करें :यह बेहतर काम कर सकता है:

SELECT
    a.locale, b.text_1, c.text_2
FROM
    (SELECT DISTINCT locale FROM i18n) a
LEFT JOIN
(
    SELECT b.locale, b.text AS text_1
    FROM   table_1 a
    JOIN   i18n b ON a.text_1 = b.id_i18n
) b ON a.locale = b.locale
LEFT JOIN
(
    SELECT b.locale, b.text AS text_2
    FROM   table_1 a
    JOIN   i18n b ON a.text_2 = b.id_i18n
) c ON a.locale = c.locale

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. कुल विज्ञापन क्लिक और दृश्य

  2. कक्षा उपस्थिति रिकॉर्ड प्रारूप SQL क्वेरी

  3. चयन के लिए MySQL पंक्ति क्रम क्या है * table_name से;?

  4. mysql मान गिनना

  5. MySQL STR_TO_DATE त्रुटि पर शून्य