Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Làm cách nào để nhận ngày đầu tiên của một quý trong MySQL?

hãy thử cái này:

Để biết ngày bắt đầu của quý hiện tại, hãy sử dụng:

  SELECT  MAKEDATE(YEAR(CURDATE()), 1) + INTERVAL QUARTER(CURDATE()) QUARTER 
                                       - INTERVAL    1 QUARTER 

Vì vậy, Truy vấn của bạn sẽ là:

SELECT
 QUARTER(r.callDate) AS quar,
 YEAR(r.callDate) AS ryear,
 MAKEDATE(YEAR(r.callDate), 1) + INTERVAL QUARTER(r.callDate) QUARTER -
  INTERVAL 1 QUARTER  AS scoreDateStart,
 (SELECT DATE (DATE_SUB( DATE_ADD( CONCAT( YEAR( r.callDate ), '-01-01'), 
 INTERVAL QUARTER(r.callDate) QUARTER ), INTERVAL 1 DAY))) AS scoreDateEnd,
 group_concat(DISTINCT(r.resultId) separator ', ') AS resultIds
FROM results AS r
GROUP BY  quar, ryear
ORDER BY quar;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Không thể kết nối với máy chủ MySQL cục bộ thông qua socket '/var/run/mysqld/mysqld.sock' trong Ubuntu 12.04.5 LTS

  2. Làm cách nào để chuyển đổi BLOB thành VARCHAR trong MySQL?

  3. nhận mysql_insert_id () trong khi sử dụng CẬP NHẬT KHÓA DUPLICATE với PHP

  4. kết nối excel vba mysql ado

  5. Không thể đặt lại mật khẩu gốc bằng --skip-Grant-table trên ubuntu 16