Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySQL renvoie la valeur maximale ou null si une colonne n'a pas de valeur

Je ne sais pas à quelle vitesse ce sera, mais je suppose que cela peut être résolu comme ceci :

SELECT ID, min(ORDER_DATE) AS OD,
IF(COUNT(*)=COUNT(CANCEL_DATE),max(CANCEL_DATE),NULL) AS CD 
FROM stats GROUP BY CLIENT

Je n'ai pas pu le tester mais l'idée derrière cette solution est que count(cancel_date) doit compter toutes les entrées de valeur non nulle et si elle est égale à count(*) cela signifie qu'il n'y a pas de valeurs nulles et qu'il renverra max(cancel_date) , sinon nul.