重新组合两个SELECT

时间:2017-08-16 09:19:16

标签: php mysql sql select bdd

此查询从我的第一个表中选择所有行,其中第二个表中不存在行ID:

SELECT *
FROM table1
WHERE NOT EXISTS (SELECT idTable1 FROM table2 WHERE table1.id=idTable1

此查询选择table1中存在的所有table2行,其最后一个ID为table2(因为table1的一行可以有多行{ {1}}但只有最后一点不会忘记):

table2

我想将两个查询重新组合成一个,我想在SELECT * FROM table2 INNER JOIN table 1 ON idTable1 = table1.id WHERE table2.id IN (SELECT MAX(actioncur.id) FROM table2 GROUP BY idTable1) 中不存在id时选择table1的所有行,并为最后{{1}选择所有table2 1}} id。例如,我想选择:第1行 - > id = 44; table2.id = 187; idTable1 = 44。第2行 - > id = 45; table2.id =? ; idTable1 =?

1 个答案:

答案 0 :(得分:0)

如果我理解正确,您可以使用相关子查询:

w_sheet.write(nrow,int(i),dict1.get(i))

ValueError: invalid literal for int() with base 10: 'IP'

您也可以使用SELECT t1.*, (SELECT MAX(t2.id) FROM table2 t2 WHERE t1.id = t2.idTable1 ) as max_t2id FROM table1 t1; LEFT JOIN

执行此操作
GROUP BY