【发布时间】:2018-03-07 16:33:34
【问题描述】:
我非常缺乏经验。我准备了一个 select 语句,它提供了填充匹配表所需的信息。但是它不适合,因为它包含 where 子句。是否有不同的使用方式,或者我该如何更改它以使其适合 INSERT INTO。
表格如下:-
match_order
match_order_id||match_descrip||first_player||second_player
1 1v2 1 2
2 1v3 1 3
3 2v3 2 3
4 1v4 1 4
5 2v4 2 4
6 3v4 3 4
条目
entry_id||round_id||league_id||box_id||box_position
1 1 1 1 1
2 1 1 1 2
3 1 1 1 3
4 1 2 1 4
5 1 2 1 2
6 1 2 1 1
7 1 2 1 1
匹配
match_id||round_id||league_id||box_id||match_order_id||player1||player2
我需要每个月为新一轮比赛插入新行。联赛大小、盒子大小和位置每个月都会变化。
这是给出正确行的语句。
SELECT e.round_id, e.league_id, e.box_id, mo.match_order_id, e.entry_id as player1, e1.entry_id as player2
FROM match_order mo
LEFT JOIN entries e ON mo.first_player = e.box_position
LEFT JOIN entries e1 ON mo.second_player = e1.box_position
WHERE e.round_id = e1.round_id AND e.league_id = e1.league_id AND e.box_id = e1.box_id
ORDER BY round_id, league_id, box_id, match_order_id
任何帮助和建议将不胜感激。 谢谢
【问题讨论】:
-
你不能在
SELECT之前添加INSERT INTO matches(round_id, leage_id, box_id, match_order_id, player1, player2)吗?并且可能删除ORDER BY。
标签: mysql sql-insert where-clause