嗨我想在下面的某些條件選擇查詢基地。我該如何實現?mySQL中的條件查詢
if var1>var2 then
SELECT * from table1;
ELSE
SELECT * from table2;
end if
在此先感謝。
嗨我想在下面的某些條件選擇查詢基地。我該如何實現?mySQL中的條件查詢
if var1>var2 then
SELECT * from table1;
ELSE
SELECT * from table2;
end if
在此先感謝。
創建這個STORED PROCEDURE
,
DELIMITER $$
CREATE PROCEDURE procName(IN _val1 INT, IN _val2 INT)
BEGIN
IF _var1 > _var2 THEN
SELECT * from table1;
ELSE
SELECT * from table2;
END IF;
END $$
DELIMITER ;
,當你打電話的過程中,
CALL procName(1,2)
謝謝。但我只限於查詢。我無法創建商店過程。此外,我想要一些插入語句在其他條件,並希望返回新插入的記錄。 – hemant 2013-02-12 09:30:59
像這樣的事情?
SELECT * from table1 WHERE var1>var2
UNION ALL
SELECT * from table2 WHERE var1<=var2
編輯:基於您的評論,也許你需要這樣的查詢:
SELECT Column1, Column2, Column3
FROM (
SELECT 1 as Tab, Column1, Column2, Column3
FROM Table1
UNION ALL
SELECT 0 as Tab, 'Value1', 'Value2', 'Value3'
) s
WHERE Tab = ((SELECT COUNT(*) FROM Table1)>10)
這將從table1中返回所有行,如果有超過10行,否則它會返回一個行(不存在於數據庫中)否則。
'var *'是外部分配的變量嗎?或從桌子上取出? – hjpotter92 2013-02-12 09:21:08
兩個表都有相同的模式? – danihp 2013-02-12 09:24:15