Mysql
 sql >> база данни >  >> RDS >> Mysql

Форматирайте MySQL с помощта на CONCAT

Бих създал CONCAT по този начин:

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

ДЕМО:SQL FIDDLE



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:изберете първия елемент от разделен със запетая списък

  2. Добавете външен ключ към съществуваща таблица

  3. MySQL преобразува низ от дата в Unix timestamp

  4. ГРЕШКА В Mysql 1241 (21000):Операнд трябва да съдържа 1 колона(и)

  5. Извличане на последните вмъкнати идентификатори за няколко реда