我在
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语句吗?