さまざまな言語のテキストを選択するために、MySQL に次の言語テーブルがあります。
CREATE TABLE `lang` (
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`group` INT(10) UNSIGNED NOT NULL,
`text` VARCHAR(255) NULL DEFAULT NULL,
`language` VARCHAR(10) NOT NULL DEFAULT 'def',
PRIMARY KEY (`id`),
UNIQUE INDEX `group_language` (`group`, `language`)
)
COLLATE='utf8_general_ci'
ENGINE=InnoDB
ROW_FORMAT=DEFAULT
テーブルには次のデータが含まれています
id group text language
1 1 This is English def
2 2 Helo sir def
3 3 how are you? def
4 3 Wie geht es dir? de
グループ フィールドは、各翻訳でどのテキストが一緒に属しているかを教えてくれます。上記の例では、グループ '3' にデフォルトのテキスト (英語) とドイツ語の翻訳があります。
ここで、ドイツ語のすべてのテキストを選択したいと考えています。それらが存在しない場合は、代替の英語テキストが必要です。
それをSQL文にまとめる方法を知っている人はいますか?