私はこのようなテーブルを持っている:同じテーブル内の別のレコードと同じレコードを更新するにはどうすればよいですか?
// names
+----+-------+
| id | name |
+----+-------+
| 1 | jack |
| 2 | jack |
+----+-------+
そして、ここでは私のクエリです:
// names
+----+-------+
| id | name |
+----+-------+
| 1 | jack |
| 2 | |
+----+-------+
そしてここでは、期待された結果である
update names set name = (select name from names where id = 1) where id = 2
しかし、それはスロー:
ERROR 1093(HY000):あなたは、私はそれを行うことができますどのように
句
から更新のターゲット表の名前」を指定することはできませんか?
あなたのデータでフィドルを作成してください –
この場合、通常、このようにしてMySQLをトリックします。... ... set name =名前を選択します(名前はid = 1の名前から選択します)。 –
それじゃない? 'self-join'を使うことができますか? @GiorgosBetsos – stack