$sql = "SELECT c.id as c_id, w.id as w_id, c.city as cms_city,
s.id as state_id, s.state_code as state
FROM `cms_hotel` as c
join webgeocities as w on c.city=w.name
and c.country_code=w.country_code
join states as s on (w.state_code= s.state_code)
group by c.id";
$result = mysqli_query($conn,$sql) or die(mysqli_error());
while($row = mysqli_fetch_array($result)){
$upd = "update cms_hotel set city_id = '".$row['w_id'].
"' where id = '".$row['c_id']."'";
$upd_result = mysqli_query($conn,$upd) or die(mysqli_error());
$sel = "select id from city_matching where city='".$row['cms_city'].
"' and state_id='".$row['state_id']."'";
$sel_result = mysqli_query($conn,$sel) or die(mysqli_error());
if (mysqli_num_rows($sel_result) == 0) {
$ins = "insert into city_matching
set city_name = '".$row['cms_city'].
"' , state_id = '".$row['state_id']."'";
$ins_result = mysqli_query($conn, $ins) or die(mysqli_error());
}
}
0
A
答えて
0
コードからループとSELECT
式を削除します。実行して、次のクエリ:
更新:
UPDATE `cms_hotel` as c
JOIN webgeocities as w ON c.city = w.name
AND c.country_code = w.country_code
JOIN states AS s ON w.state_code = s.state_code
SET c.city_id = w.id,
GROUP BY c.id
インサート:
INSERT INTO city_matching (city_name, state_id)
SELECT c.city, s.id
FROM `cms_hotel` as c
JOIN webgeocities as w ON c.city = w.name
AND c.country_code = w.country_code
JOIN states AS s ON w.state_code = s.state_code
LEFT JOIN city_matching AS cm ON cm.city=c.city
AND cm.state_id=s.id
WHERE cm.city IS NULL
GROUP BY c.city, s.id
関連する問題
- 1. 最適化/ MySQLクエリ
- 2. MySql最適化クエリ
- 3. MySQLのクエリの最適化
- 4. MySQLのクエリの最適化
- 5. MySQLのクエリ最適化
- 6. 最適化MySQLのクエリ
- 7. MySQLクエリの最適化
- 8. MysQLクエリの最適化、
- 9. PHP MySQLクエリの最適化
- 10. MySQL:クエリの最適化
- 11. MySQLクエリの最適化
- 12. 最適化MySQLのクエリ:
- 13. mysqlクエリの最適化
- 14. PHP/MySQLクエリの最適化?
- 15. 最適化MySQLのクエリ
- 16. MySQLクエリの最適化
- 17. MySQLクエリの最適化
- 18. laravel MySQLクエリの最適化
- 19. MySQLクエリの最適化
- 20. MySQLクエリの最適化 - ランダムレコード
- 21. MySQLのクエリの最適化 - 内部クエリ
- 22. MySQLのグループ化クエリの最適化
- 23. mySql結合最適化クエリ
- 24. 最も頻繁なMySQL SELECTクエリを最適化する方法
- 25. 次のクエリを最適化する方法
- 26. MySQLのクエリのパフォーマンスの最適化
- 27. パフォーマンス面でこのmySQLクエリを最適化する方法は?
- 28. MySQLのクエリを最適化する正しい方法
- 29. mySQLのSQLクエリの最適化
- 30. Mysqlのクエリの最適化とソート
私はcms_hotelテーブル内のレコード数百万を持っているので、私は、クエリ上で実行するための最も最適化方法をしたいです。私はcity_matchingに挿入するために重複したデータを防ぐ方法 –