0
私は後続のSQLクエリを実行しますが、それは私にメッセージエラー:Unknown column 't1.ip' in 'where clause'
を与えます。 サブテストでt1.ip
をテスト用にハードコードすると、完全に動作します。サブクエリ非リレーショナルテーブルを使用して更新
UPDATE
report_a t1,
(SELECT
location.country, region.name, location.city
FROM
geoip
INNER JOIN
location
ON
geoip.locId = location.locId
INNER JOIN
region
ON
region.country = location.country
AND
region.region = location.region
WHERE
INET_ATON(t1.ip) BETWEEN startIpNum AND endIpNum
LIMIT 1) AS t2
SET
t1.country = t2.country,
t1.city = t2.city,
t1.state = t2.name;
誰かがこのクエリをどのように行うことができますか?あなたがjoin
を探している
おかげ
ほぼ動作します! 「ON」を「WHERE」に変更しました。 'LIMIT 1 'を使うのはメーカーの推奨ですが、複数のマッチがあってはならないと思います。 – Guhh