作者b60413 (None)
看板Database
標題[SQL ] MySQL PROCEDURE
時間Fri Aug 10 11:26:54 2012
最近開始在玩MySQL的Procedure跟Function功能,
我想要做的是去檢查一個Table是否存在,
存在則去撈取資料,否則就不去撈取資料,
想要去取兩個Table的資料做UNION或JOIN,
不知道應該如何去做,
( call test('tb1') ) UNION ( call test('tb2') )好像是行不通的,
也不太清楚要怎樣去設定OUT Parameter....才可以取得SELECT的結果,
以下是我自己測試寫的Procedure,
還請知道的人幫忙解惑,
謝謝.
delimiter //
CREATE PROCEDURE test(IN num VARCHAR(10))
BEGIN
IF
(
(
SELECT table_name FROM information_schema.tables
WHERE table_schema = 'test' AND table_name = num
) = num
)
THEN
SET @sql_text = CONCAT('SELECT * FROM ',num);
PREPARE stmt FROM @sql_text;
EXECUTE stmt;
END IF;
END//
--
http://www.myspace.com/soundtrack0220
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.170.166.12