有如圖的一個存盤程序, 在存盤程序中單獨除錯,沒有加IF...ELSE之類的判斷邏輯,是可以正常除錯和列印結果, 加上業務邏輯后,部分select就沒有輸出了,
通過執行動態sql陳述句,可以顯示到如圖描述的結果
但是往下一步,就無法列印出結果, 請各位大神指點!


相關段落代碼:
SELECT a.des_ids into tmp_addrs FROM liquid_meter a WHERE a.src_id='0245';
-- 拼裝結構化SQL陳述句
SET @str1 = 'SELECT max(a1),min(a1) into @a1_max,@a1_min FROM sensor_dev_msg t WHERE t.addr IN ( ';
SET @str2 = ') AND t.stime > DATE_FORMAT(DATE_SUB(CURTIME(),interval 1 HOUR),''%Y-%m-%d %H:%i'') ';
SET @str1 = CONCAT(@str1,tmp_addrs,@str2);
#SELECT @str1;
PREPARE stmt FROM @str1;
EXECUTE stmt ;
DEALLOCATE PREPARE stmt;
SELECT @a1_max,@a1_min into v_max,v_min;
SELECT v_max,v_min;
SELECT v_max+v_min into v_tmp_a1;
#select format(v_min + (RAND() * (v_max-v_min)),5) into v_tmp_a1;
SELECT v_tmp_a1;
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/87974.html
標籤:MySQL
