-1

データベースのアドレス列のアドレスを修正する方法はありますか?

レコードが 2 つある場合 123 Main RD 123 Main Road

両方を同じにしたいのですが、同じであればどちらを選んでも問題ありませんか?

MySQLでこれを行う方法はありますか?

テーブルはこんな感じ

CREATE TABLE address (
id int(11),
address1 varchar(255),
account_id int(11)
);

id -> address1 ->   account_id
10 -> 123 Main RD          -> 65
20 -> 123 Main ROAD        -> 65
25 -> 8751 West 1st Street -> 65
27 -> 4521 11th Ave        -> 65

したがって、すべてではなく同じ account_id を共有するアドレスを比較したいので、同じ account_id を持つ 10 個のレコードがある場合、すべてのデータベースではなく、10 個のアドレスを互いに比較するだけです。

4

2 に答える 2

2

これは大まかな推測ですが、同じアドレスを持つすべての行がaccount_id同じアドレスを持つ必要がある場合は、次のことができます

UPDATE address a JOIN
(
  SELECT *
    FROM address
   WHERE account_id = 65
   ORDER BY id DESC
   LIMIT 1
) q ON a.account_id = q.account_id
   SET a.address1 = q.address1

ここにSQLFiddleがあります

于 2013-08-07T20:39:27.220 に答える