1

PHPでデータをいじる代わりに、このデータベーストランザクションを1つのmysqlクエリで実行しようとしています。問題は、私がmysqlが得意ではないことです。先頭のゼロを削除し、数値に 44 を追加してデータを標準化し、いくつかの列を更新しようとしています。ただし、CONCAT および TRIM のデータをそのままにしておくことはできます。

これは私がこれまでに持っているものです...

UPDATE calldata AS gcd 
JOIN tarif AS ap 
ON CONCAT('44', TRIM(LEADING 0 FROM `gcd.n_dialled`)) 
LIKE CONCAT(ap.prefix, '%')
SET gcd.prefix=ap.prefix, gcd.dest1=ap.dest
WHERE gcd.countrycode='UKN' 
AND gcd.citycode=''

内部サーバー エラーだけで、SQL エラーは発生しません。

http://sqlfiddle.com/#!2/df7913/ sqlfiddle

4

0 に答える 0