есть еще вопрос. он вообще по sql'ю, но запостю сюда, чтобы не плодить темы.
итак, есть таблица langtypes (langID,langName) и таблица lang(textID,langID,val).
Есть, например, записи.
Таблица langtypes
(langID,langName)
1.........russian
2.........english
3.........dutch
Таблица lang
(textID,langID,val)
1......1.............Алушта
1......2.............Alushta
2......1.............Пансионат расположен в горной местности
2......2.............Pansion placed in rocky region
Т.е. появился новый язык "dutch", но для него записей в lang нет.
Как составить запрос, который вывел бы все записи по одному textID но для всех langID, так, что если langID не существет, то val=null. Т.е., для
textID например 1 запрос выбрал:
1......1.............Алушта
1......2.............Alushta
1......3.............null
Я здесь не очень шарю. Попробовал
SELECT * FROM ta_langtypes
LEFT JOIN ta_lang ON ta_langtypes.id=ta_lang.langID WHERE textID=1;
основываясь на примере
Цитата:
SELECT table1.* FROM table1
LEFT JOIN table2 ON table1.id=table2.id
WHERE table2.id IS NULL;
This example finds all rows in table1 with an id value that is not present in table2 (that is, all rows in table1 with no corresponding row in table2).
|
но не катит. вывел только записи для существующих langID. Я так понимаю, проблема в двойном индексе?