MySQL 儲存過程 CONCAT 字串拼接
阿新 • • 發佈:2019-02-07
CREATE PROCEDURE pro_province_report (IN startDate VARCHAR(20),IN endDate VARCHAR(20),IN SourceType INT)
/*
功能:根據時間,來源SourceType
統計 每個省份的 註冊使用者 投稿數 作品點選量 投票量 參與人數
pro_province_report();
*/
BEGIN
DECLARE temp_user_sql VARCHAR(500);
DECLARE temp_works_sql VARCHAR( 500);
#條件
DECLARE dateStr VARCHAR(100);
DECLARE dateStr_w VARCHAR(100);
#來源條件
DECLARE sourceStr VARCHAR(100);
DECLARE sourceStr_w VARCHAR(100);
IF(startDate!=''&&endDate!='') THEN
SET dateStr=CONCAT( ' AND DATE(addDate)>=DATE("',startDate,'") AND DATE(addDate)<=DATE("' ,endDate,'")' );
SET dateStr_w=CONCAT( ' AND DATE(w.addDate)>=DATE("',startDate,'") AND DATE(w.addDate)<=DATE("',endDate,'")' );
ELSE
SET dateStr=" AND 1=1 ";
SET dateStr_w=" AND 1=1 ";
END IF;
IF(SourceType>0) THEN
SET sourceStr=CONCAT(' AND SourceType=" ',SourceType,'" ');
SET sourceStr_w=CONCAT(' AND w.SourceType="',SourceType,'" ');
ELSE
SET sourceStr=" AND 1=1 ";
SET sourceStr_w=" AND 1=1 ";
END IF;