0

我想使用另一个变量来引用一个变量。基本上我有 7 个地址字段(地址 1、地址 2 等),从 1 到 7 的循环会节省大量编码。这是我需要这个的基本情况:

Naddress1 = replace(Naddress1,'.','');
Naddress2 = replace(Naddress2,'.','');
Naddress3 = replace(Naddress3,'.','');
Naddress4 = replace(Naddress4,'.','');
Naddress5 = replace(Naddress5,'.','');
Naddress6 = replace(Naddress6,'.','');
Naddress7 = replace(Naddress7,'.','');
Naddress1 = replace(Naddress1,',',' ');
Naddress2 = replace(Naddress2,',',' ');
Naddress3 = replace(Naddress3,',',' ');
Naddress4 = replace(Naddress4,',',' ');
Naddress5 = replace(Naddress5,',',' ');
Naddress6 = replace(Naddress6,',',' ');
Naddress7 = replace(Naddress7,',',' ');
Naddress1 = replace(Naddress1,'/'',' ');
Naddress2 = replace(Naddress2,'/'',' ');
Naddress3 = replace(Naddress3,'/'',' ');
Naddress4 = replace(Naddress4,'/'',' ');
Naddress5 = replace(Naddress5,'/'',' ');
Naddress6 = replace(Naddress6,'/'',' ');
Naddress7 = replace(Naddress7,'/'',' ');

我想要什么:

DECLARE address_iterator INT;
SET address_iterator = 1;
WHILE address_iterator <= 7 DO
Naddress & address_iterator = replace(Naddress & address_iterator, '.','');
Naddress & address_iterator = replace(Naddress & address_iterator, ',',' ');
Naddress & address_iterator = replace(Naddress & address_iterator, '/'',' ');
END WHILE;
4

1 回答 1

0

在 MySQL 中,你可以做这样的事情 -

UPDATE
  table
SET
  address1 = REPLACE(REPLACE(REPLACE(address1, '.', ''), ',',' '), '/',' '),
  address2 = REPLACE(REPLACE(REPLACE(address2, '.', ''), ',',' '), '/',' '),
  address3 = REPLACE(REPLACE(REPLACE(address3, '.', ''), ',',' '), '/',' ');

否则,您应该在应用程序中自动执行此任务。

于 2012-09-05T06:58:52.310 回答