[英]How to return all values of all columns and the highest value of column_name in one select
要返回所有列的所有值和特定列的最大值的值,我可以這樣做(兩個選擇)
$result = mysqli_query($conn,"SELECT max(colun3) AS max_c FROM table");
$rows = mysqli_fetch_array($result);
$maximo = $rows["max_c"];
$result2 = mysqli_query($conn, "SELECT * FROM table");
while($rows2 = mysqli_fetch_array($result2)) {
if($rows2['column3']==$maximo){
$color = 'bgcolor=blue';
}else{
$color = '';
}
$var1 = $rows2['column1'];
$var2 = $rows2['column2'];
$var3 = $rows2['column3'];
...........
使用上面的代碼,我可以在屏幕上打印所需的內容,但是是否可以通過選擇來實現此結果呢? 就像是
$result = mysqli_query($conn,"SELECT *, max(colun3) AS max_c FROM table");
while($rows = mysqli_fetch_array($result)) {
?????????
如果可能的話,我如何在屏幕上打印結果
$result = mysqli_query($conn,"SELECT *,(SELECT max(colun3) AS max_c FROM table) FROM table");
應該在其他查詢的每一行上添加max_c。
另外,建議不要使用*,而應寫每列。
要打印結果,您可以例如執行以下操作:
$assoc_array_of_results = mysqli_fetch_all($result,MYSQLI_ASSOC);
print_r($assoc_array_of_results);
您可以使用嵌套請求
SELECT *, (SELECT max(colun3) AS max_c FROM table) FROM table;
您還可以使用GROUP BY x WITH ROLLUP
SELECT *, MAX(colun3) FROM table GROUP BY YOUR_PRIMARY_KEY WITH ROLLUP
它應在結果的最后一行生成一行,其中除max列外的所有內容均為null,且最大值正確
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.