-2
SELECT IFNULL(post.id
,INSERT INTO post(pdate,body) VALUES (1,'a')
,UPDATE post set body='update',pdate=2
)
from post where body='a' and pdate=1
SELECT IFNULL(post.id
,INSERT INTO post(pdate,body) VALUES (1,'a')
,UPDATE post set body='update',pdate=2
)
from post where body='a' and pdate=1
您可以嘗試創建這樣一個存儲過程:
CREATE PROCEDURE `myProc`
BEGIN
IF EXISTS (SELECT post.id from post where body='a' and pdate=1) THEN
UPDATE post set body='update',pdate=2;
ELSE
INSERT INTO post(pdate,body) VALUES (1,'a');
END IF;
END //
謝謝,但我會產生在PHP這個查詢不存儲過程 – Ali
@阿里: - 在這種情況下,只需刪除「CREATE PROCEDURE」並在您的PHP代碼中使用它。 –
我知道,但我想要在一個請求中執行這個查詢,而不是多個查詢 – Ali