2

SQL データベースを使用して PHP で小さなメッセージング アプリケーションを作成していますが、小さな問題に直面しています。私はこれを可能な限り説明しようとしますので、ここに行きます...

次のように「users」というテーブルがあります。

ID | Username | Password | Email 
-------------------------------------------
1  | Account1 | Pass 1   | email1@mail.com
2  | Account2 | Pass 2   | email2@mail.com

次に、次のように「友達」と呼ばれる別の人がいます。

UserID | FriendID
------------------
   1   |     2    

したがって、必要なのは、2 番目のテーブルで条件が満たされた場合に "Friends" テーブルから A 行を削除するクエリです。

例:

DELETE FROM 'friends' WHERE UserID = 1 AND (users.Password = $Password WHERE users.ID = 1)

それが十分な説明であったことを願っていますが、これを説明するのは難しいと思います.

4

1 に答える 1

1
DELETE FROM 'friends' 
WHERE UserID IN (
    SELECT UserID 
    FROM users 
    WHERE Password=$Password 
    AND UserID=1
)

動作するはずです。UserId フィールドを 2 回リストする必要はありません。冗長になります。

于 2012-11-07T20:00:28.010 に答える