0

データベースにエラーがあり、いくつかのビットを一括修正する必要があります...しかし、それは簡単ではありません..またはそう思います!? 私はSQLステートメントが得意ではありません..ほとんどの場合、大量のデータを入れるのではなく、データを引き出すためにSQLステートメントを使用していました. これが私のクエリです...

    SELECT * FROM tickets_messages
    INNER JOIN tickets ON tickets_messages.ticket_id = tickets.id 
    INNER JOIN people ON tickets_messages.person_id = people.id
    WHERE tickets.person_id = 201 AND tickets_messages.person_id = 32

システムには「チケット」があり、People と ticket_messages の 2 つのテーブルでリンクされています。一部のメッセージは ID 32.. 未満である必要があり、一部は ID 201 未満である必要があります。そのため、システムが 201.. が所有していると見なすチケットを見つけるために内部結合を実行しましたが、実際には ticket_messages に 32 として表示されます。

つまり、内部結合を使用して select ステートメントを update ステートメントに変更したいと考えています。私はこの分野で少し揺れを感じているので、それを行うことについて誰にでも提案があります。

PSこれは私の推測です..正しいです:

   UPDATE tickets_messages SET person_id = 201 
   INNER JOIN tickets ON tickets_messages.ticket_id = tickets.id 
   INNER JOIN people ON tickets_messages.person_id = people.id
   WHERE tickets.person_id = 201 AND tickets_messages.person_id = 32

ありがとう

4

1 に答える 1

0

あなたの質問は何ですか?UPDATEコマンドがあなたの望むことを実行することを誰かに確認してもらいたいだけですか?SELECTクエリで見つかったすべてのレコードで201に設定することが目標である場合、ticket_messages.person_idそれは私には正しく見えます。

于 2012-10-07T02:43:18.930 に答える