0
A
回答
1
使用MySQL的多表更新語法:
update main, (
select a.id, b.aggr
from main a
join (
select uk, group_concat(cascina_uk SEPARATOR '|') as aggr
from main
group by uk
) b on a.uk = b.uk
) temptable
set main.aggr = temptable.aggr
where main.id = temptable.id
請注意,我只有重新安排你的查詢部分轉換爲正在運行的查詢我懷疑可以對子查詢進行優化。
1
從您的查詢中,我瞭解到您正在更新多個id
行,其值相同,爲aggr
。那麼這個應該工作:
update main
set aggr = group_concat(cascina_uk SEPARATOR '|')
group by uk
1
試試這個
update main c
set
c.aggr = (select b.aggr
from
main a,
(select uk, group_concat(cascina_uk SEPARATOR '|') as aggr from main group by uk) b
where
a.uk = b.uk
and c.id = a.id)
相關問題
- 1. 用等效的EXISTS()查詢替換IN()子查詢
- 2. 用一個查詢查詢兩個表
- 3. 替換兩個MINUS/EXCEPT查詢
- 4. 查詢兩人在一個MySQL查詢
- 5. 兩個查詢在一個
- 6. 切換兩個div查詢
- 7. 加入兩個查詢到一個查詢或製作一個子查詢
- 8. 結合兩個查詢到一個一個查詢
- 9. 兩個查詢
- 10. 查詢調用兩個其他查詢
- 11. LINQ等效查詢
- 12. 檢查兩個在一個查詢表
- 13. 爲C#LINQ查詢Vb.net等效查詢
- 14. 等效標準查詢命名查詢
- 15. 用一個查詢得到兩個查詢的結果 - mysql
- 16. 查找和替換兩個詞組的MYSQL查詢
- 17. 一個查詢,一個表,兩個數()
- 18. 用一個查詢插入兩個表
- 19. 替代查詢以加入兩個單獨的查詢
- 20. Laravel - 查詢最後兩個等於
- 21. 我怎麼一個MySQL查詢轉換爲一個PHP查詢
- 22. 使用單個查詢替換ID的名稱使用單個查詢
- 23. 兩個SQL查詢的交替結果
- 24. 從兩個查詢
- 25. mysql兩個查詢
- 26. SQL兩個查詢
- 27. 查詢兩個表
- 28. 查詢兩個DBS與子查詢
- 29. 結合兩個查詢(子查詢)
- 30. SQL替換查詢
不,您不能用一個等效查詢替換INSERT和UPDATE查詢... –
第一個查詢看起來像這樣一個壞主意。 – Strawberry