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

DATEDIFF - Remplacer NULL par NOW()

Utilisez COALESCE à la place :

SELECT
    e.id,
    c.name,
    e.location,
    e.designation,
    e.time_period_from,
    e.time_period_to,
    DATEDIFF(COALESCE(e.time_period_to, NOW()), e.time_period_from) AS tenure_in_days
FROM employment e
LEFT JOIN company c ON (c.id = e.company_id)
LIMIT 0, 10

Je suppose que vous vouliez DATEDIFF(e.time_period_to, e.time_period_from) .

Utiliser LIMIT sans ORDER BY explicite peut renvoyer un résultat en fonction du plan d'exécution.