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

Tạo tập kết quả khác nhau bằng cách sử dụng một tập kết quả

Để sử dụng tập kết quả trong điều kiện truy vấn cho một tập hợp các truy vấn, bạn cần có con trỏ.

Vui lòng xem thông tin cơ bản về cách sử dụng con trỏ tại đây và trong tài liệu

DELIMITER $$

CREATE PROCEDURE group_results_by_date 
BEGIN

 DECLARE v_finished INTEGER DEFAULT 0;
 DECLARE cdate DATE DEFAULT "2015-01-01";

 -- declare cursor for getting list of dates
 DEClARE date_cursor CURSOR FOR 
    SELECT DISTINCT (date) FROM yourtable;

 -- declare NOT FOUND handler
 DECLARE CONTINUE HANDLER 
        FOR NOT FOUND SET v_finished = 1;

 OPEN date_cursor;

 get_content: LOOP

 FETCH date_cursor INTO cdate;

 IF v_finished = 1 THEN 
 LEAVE get_content;
 END IF;

 -- Select query for different dates
 Select count, date, content from yourtable where date = cdate;

 END LOOP get_content;

 CLOSE date_cursor;

END$$

DELIMITER ;

Bạn có thể gọi thủ tục này bằng

CALL group_results_by_date();



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. bộ nhớ cache truy vấn không hoạt động

  2. Yii CHÈN ... TRÊN CẬP NHẬT DUPLICATE

  3. Đây có phải là một cuộc thăm dò dài đúng không?

  4. LENGTH () trong MySQL là gì?

  5. Chuỗi MySQL Chỉ mục cuối cùng của