如何在使用连接多个表时使用select *
?
我可以使用SELECT * , max(i_test.num)
来选择表格h_test
,i_test
和max(i_test.num)
喜欢这段代码
$SQL = "SELECT * , max(i_test.num) FROM h_test INNER JOIN i_test ON i_test.pro_id = h_test.pro_id
WHERE h_test.pro_id != '0' AND i_test.num > '5' GROUP BY h_test.pro_id order by i_test.num desc ";
答案 0 :(得分:2)
你应该使用select h_test.*, i_test.*
即,在使用加入查询时,您应该使用select table_name.*
答案 1 :(得分:0)
聚合函数(MAX,SUM,COUNT等)需要'group by'子句
此外,'group by'必须列出select子句中列出的所有不在聚合函数中的字段。
例如:
SELECT fld1, fld2, fld3, COUNT(fld4), SUM(fld5)
FROM myTable
GROUP BY fld1, fld2, fld3
我看过没有group by子句使用的聚合但这是一个奇怪的,而不是SQL标准,我不确定是什么意思。