[英]Complex Update Sql Statement
我有兩個表,一個表有一個id
和一個username
名,表的名稱是user
。 我有另一個表,稱為value
,該表具有一個id
,用於存儲user
表中的ID。 表value
還具有一列,稱為value
和item_id
,用於存儲項目。
我想編寫一條更新語句,以更新值id, value, item_id
中的以下列id, value, item_id
但是我要執行該語句的值是username = $username, value = $value and item_id=$item_id
(基於應用程序)
如何編寫存儲id
(用戶名ID), value
和item_id
的更新語句
使用更新語句的原因是因為該用戶可以隨時更改value
列中的value
UPDATE `value` SET `value` = $value WHERE item_id = $item_id
AND user_id IN (SELECT id FROM `users` WHERE username = $username)
確保清理數據庫輸入。
這只會更新,如果您要創建條目(我假設user_id和item_id是第二張表的組合主鍵),則可以使用replace into語句。
請告訴我您是否需要,因為我認為這不是問題。
它可能沒有那么有效,但是我認為這並不重要,但是您當然可以先通過單獨的查詢獲取用戶ID。
這可能會更好理解。
嘗試這個
UPDATE value, user
SET value = $value
WHERE item_id = $item_id
AND value.user_id = user.user_id
AND user.username = $username;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.