sql >> Database >  >> RDS >> Mysql

DATEDIFF - Vervang NULL door NOW()

Gebruik COALESCE in plaats daarvan:

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

Ik neem aan dat je DATEDIFF(e.time_period_to, e.time_period_from) wilde .

LIMIT gebruiken zonder expliciete ORDER BY kan resultaat opleveren afhankelijk van het uitvoeringsplan.



  1. voeg twee verschillende tabellen samen en verwijder dubbele vermeldingen

  2. Hoe kan ik een lijst met elementnamen krijgen van een XML-waarde in SQL Server?

  3. Een database ontwerpen:wat is de betere aanpak?

  4. mysqli meerdere vragen - set variabele produceert booleaanse fout/hoe dit over te slaan?