sql >> Base de Datos >  >> RDS >> Mysql

Devolviendo NULL usando WHERE IN

Una right outer join , left outer join , case y también not exists también se puede utilizar. Algunos ejemplos a continuación... (con enlaces a ejemplos prácticos de SQL Fiddle).

Unión externa derecha a la tabla temporal (seleccione # UNION)

SELECT GROUP_CONCAT(CASE WHEN COLUMN1 IS NULL THEN "NULL" ELSE COLUMN1 END)
FROM archive
RIGHT OUTER JOIN
  (SELECT 21 AS id
   UNION SELECT 22 AS id) AS tmp ON tmp.id=archive.column2;

SQL Fiddle:http://sqlfiddle.com/#!2/805e1c/9

Unión externa derecha a la segunda tabla

SELECT GROUP_CONCAT(
  CASE WHEN COLUMN1 IS NULL THEN "NULL" ELSE COLUMN1 END)
FROM archive
RIGHT OUTER JOIN temporary tmp ON tmp.id=archive.column2;

SQLFiddle:http://sqlfiddle.com/#!2/36fba/2