是否可以將SELECT
特定行和DELETE
所選結果在ONE請求?MySQL在一個請求中刪除所有選定的行
$res = $Connection->query("SELECT * FROM tasks");
if($res->num_rows > 0){
while($row = $res->fetch_assoc()){ ...
問題是,我對SQL數據庫的查詢數量有限,我想盡量減少它的數量。
是否可以將SELECT
特定行和DELETE
所選結果在ONE請求?MySQL在一個請求中刪除所有選定的行
$res = $Connection->query("SELECT * FROM tasks");
if($res->num_rows > 0){
while($row = $res->fetch_assoc()){ ...
問題是,我對SQL數據庫的查詢數量有限,我想盡量減少它的數量。
你不能在PHP中使用普通的mysql-api。只需執行兩個查詢。第二個將會如此之快,以至於無所謂。這是微型優化的一個典型例子。不要擔心。 (所以時間並不重要)
有關記錄,因爲您擔心查詢的次數,可以使用mysqli和mysqli_multi_query-function來完成。
P.S. - 我還沒有試過這種,但由於這mysql_multi_query
有沒有在文檔中,它可能會幫助... :)
SELECT和DELETE都單獨需要一個請求。並且沒有SQL可以在官方文檔中完成這項工作。
嗯,你不能選擇的東西不存在(因爲你剛刪除它們) – 2016-08-02 23:06:11
我想做的事這一次。首先選擇然後刪除,如果你喜歡。 – Zero
好吧那麼做那麼 – 2016-08-02 23:07:29