1
A
回答
1
您可以嘗試以下方法:
- 答:使用附加表,也許暫時的,存儲在你的程序需要ID值,然後再加入該表到另一個表(或多個)。
- B:將ID值作爲字符串參數傳遞給過程,然後生成結果SQL語句,並使用MySQL prepared statements執行它。
實施例(情形甲):
DELIMITER $$
CREATE PROCEDURE procedure1()
BEGIN
SELECT * FROM table1 t1 JOIN table_id t2 ON t1.id = t2.id;
END$$
DELIMITER ;
CREATE TABLE table_id(id INT(11));
INSERT INTO table_id VALUES(1),(2),(3),(4),(5);
CALL procedure1();
實施例(情形乙):
DELIMITER $$
CREATE PROCEDURE procedure1(IN id_param VARCHAR(255))
BEGIN
SET @sql = CONCAT('SELECT * FROM table WHERE id IN (', id_param, ')');
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END$$
DELIMITER ;
SET @id = '1,2,3,4,5';
CALL procedure1(@id);
相關問題
- 1. mysql存儲過程問題
- 2. 存儲過程+ mysql問題
- 3. MYSQL存儲過程問題
- 4. Mysql存儲過程問題
- 5. MYSQL存儲過程只記錄更新
- 6. 日誌記錄mysql存儲過程sqls
- 7. 使用c#中的存儲過程獲取DB的記錄
- 8. 執行Mysql存儲過程的問題
- 9. MySQL的存儲過程INSERT問題
- 10. PHP/MySQL存儲過程問題
- 11. MySQL - 存儲過程語法問題
- 12. MySQL存儲過程聲明問題
- 13. Mysql - 存儲過程併發性問題
- 14. Mysql存儲過程SQLYog問題
- 15. MySQL存儲過程循環問題
- 16. 獲取從存儲過程返回的表的記錄數
- 17. MySQL存儲過程只返回記錄與子記錄
- 18. 如何獲取受存儲過程影響的記錄數?
- 19. Silverlight獲取記錄問題
- 20. 從存儲過程使用C++獲取記錄集ADODB CommandPtr :: Execute()
- 21. MySQL的存儲過程,檢查是否存在記錄
- 22. 將記錄集傳遞到存取過程中的存儲過程
- 23. 獲取mysql其他存儲過程到新的存儲過程數據
- 24. 存儲過程FREETEXT問題
- 25. Oracle存儲過程問題
- 26. SQL存儲過程問題
- 27. SQL /存儲過程問題
- 28. 問題與存儲過程
- 29. Oracle存儲過程問題
- 30. 存儲過程問題
給我一些示例 – Swapnil
兩個示例中加入) – Devart
我會嘗試都示例 – Swapnil