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