Mam dwie tabelę z tej strukturymysql przyłączyć się stanie
categories
--------------------------------
id | create
1 | 2012-12-01 12:00:00
2 | 2012-12-01 12:00:00
category_i18ns
--------------------------------
category_id | lang | title
1 | en | home page
1 | de | HomE PAGEa
1 | fa | خانه
2 | en | about
niektóre kategorie mają wszystkie dane języków i jakiś inny havnt. na przykład kategoria id 2 po prostu ma przetłumaczony tytuł en
. chcę mieć zapytanie, które najpierw sprawdza bieżący język do pobrania tytułu, a jeśli nie istnieje, to pokaż inne.
Mam zapytanie, aby uzyskać dane kategorii bieżącej z danymi i18n w tym bieżącym przykładzie de
jest językiem domyślnym. dla kategorii id 1
mamy tytuł de
, ale dla kategorii 2
nie mamy. więc chcę english version jak tytuł kategorii
SELECT * FROM `mhf_swe_ndzhmju3_test`.`categories` AS `Category`
LEFT JOIN `mhf_swe_ndzhmju3_test`.`category_i18ns` AS `CategoryLocale` ON (
`CategoryLocale`.`category_id` = `Category`.`id`
AND `CategoryLocale`.`lang` = 'de')
pragnienie obecnie wprowadzone do 'de' języka
Category.id CategoryLocale.title CategoryLocale.lang
1 HomE PAGEa de
2 about en
Jeśli masz "en" i "fa" dla kategorii 2, ale nie masz "de", który język musisz wybrać? –
Czy możesz podać właściwą wydajność, której oczekujesz? – Subodh
@HamletHakobyan nie ważne. Najpierw dodano dane wyjściowe dotyczące mysql serverd – sweb