I have a table with translations, looking like:
table name: text
id | en | de | fr 1 | test | NULL | test 2 | thing | thing | NULL 3 | other | NULL | NULL
The en
column is never null
,
I would like an overview of all column names whenever one or more of them have a NULL
value. So from the table above, I would like this result:
test | de thing | fr other | de | fr
Most ideally this would be done in a single query, but I don’t know if that is possible.
Currently I use a query to determine the NULL values from a single language, which is:
SELECT en FROM text WHERE de IS NULL
and do this manually for each language.
Any help or a step in the right direction would be appreciated.
Advertisement
Answer
A pretty simple method is:
select id, concat( (case when en is null then 'en;' else '' end), (case when de is null then 'de;' else '' end), (case when fr is null then 'fr;' else '' end) ) as missing_columns from t where en is null or de is null or fr is null;