2016-03-29 30 views
0

你會希望運行時獲得 -什麼是與SELECT *(SQL)AGG的功能預期的行爲

select *, max(col1) from table1; 

你會期望得到

  1. 只與行MAX(COL1)
  2. 全部用MAX(COL1)行值旁邊

是不同的數據庫之間的不同S'

+1

錯誤...(列GROUP1.col1未在GROUP BY子句中引用。) – jarlh

+0

閱讀[docs](https://dev.mysql.com/doc/refman/5.0/en/group-by- handling.html):它解釋了mySQL如何擴展group by子句,該子句的行爲與其他RDBMS系統不同;除非你已經禁用了默認啓用的這個功能。 – xQbert

回答

2

如果你想一排與col1最大值,然後用order bylimit

select t1.* 
from table1 t1 
order by col1 desc 
limit 1; 

在MySQL中,你的查詢將返回一行具有不確定的值由*與所代表的所有列最大值爲col1。在其他數據庫中,它會返回一個錯誤。

相關問題