sql >> Databasteknik >  >> RDS >> Mysql

Formatera MySQL med CONCAT

Jag skulle skapa CONCAT på detta sätt:

SELECT 
    e.name AS Employee,
    CONCAT(
        CEIL(DATEDIFF(h.date, e.startdate)/365), 
        ' (',
        DATE_ADD(e.startdate, INTERVAL FLOOR(DATEDIFF(h.date, e.startdate)/365) YEAR), ' to ',        
        DATE_ADD(e.startdate, INTERVAL CEIL(DATEDIFF(h.date, e.startdate)/365) YEAR),
        ')'
        ) as Year,
    COUNT(h.date) AS Holidays_Taken,
    SUM(h.hours) AS Hours
FROM employees AS e
LEFT JOIN holidays_taken AS h ON e.id = h.empid
WHERE e.id = 1
GROUP BY Year

DEMO:SQL FIDDLE



  1. Hur gör man en databaslyssnare med java?

  2. MySQL min och max för varje kolumn

  3. Rails, MySQL och Snow Leopard

  4. Använda MariaDB Audit Plugin för databassäkerhet