午夜剧场伦理_日本一道高清_国产又黄又硬_91黄色网战_女同久久另类69精品国产_妹妹的朋友在线

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Mysql中g(shù)roup by的問(wèn)題。。

瀏覽:230日期:2022-06-12 17:12:41

問(wèn)題描述

Mysql中,下面這樣的寫法是可以允許的。但是嚴(yán)不嚴(yán)謹(jǐn),支不支持這樣寫?有疑惑過(guò)不去這個(gè)坎,請(qǐng)大家?guī)兔纯础?/p>

select * from user group by user_name;

問(wèn)題解答

回答1:

最詳細(xì)的文檔說(shuō)明在官網(wǎng)找到了。

MySQL 5.7.5 and up implements detection of functional dependence. If the ONLY_FULL_GROUP_BY SQL mode is enabled (which it is by default), MySQL rejects queries for which the select list, HAVING condition, or ORDER BY list refer to nonaggregated columns that are neither named in the GROUP BY clause nor are functionally dependent on them. (Before 5.7.5, MySQL does not detect functional dependency and ONLY_FULL_GROUP_BY is not enabled by default. For a description of pre-5.7.5 behavior, see the MySQL 5.6 Reference Manual.)

來(lái)源:https://dev.mysql.com/doc/ref...

回答2:

select中的字段需要在group by中強(qiáng)制寫出來(lái)select user_name from user group by user_name;

http://blog.csdn.net/u2830560...

回答3:

首先理解下分組是個(gè)什么概念,分組后可以達(dá)到什么樣的效果;分組是為了按組這個(gè)屬性進(jìn)行統(tǒng)計(jì)分析;例如一個(gè)學(xué)生表中,按性別分組,可以統(tǒng)計(jì)出男生多少人,女生多少人。在查詢結(jié)果列中,必然是sum,count等聚合函數(shù)組成。例如:select count(*),sex from student group by sex;如果是select * from user group by user_name;是想要得到一個(gè)什么樣的統(tǒng)計(jì)結(jié)果呢?mysql5.6默認(rèn)可以使用這種寫法select * from user group by user_name,但實(shí)際上在內(nèi)部對(duì)語(yǔ)句做過(guò)轉(zhuǎn)換;mysql5.7以后默認(rèn)不能使用此中寫法,會(huì)報(bào)錯(cuò)。所以寫之前先想想我需要通過(guò)分組統(tǒng)計(jì)什么內(nèi)容,使用適合的聚合函數(shù)

回答4:

在SQL語(yǔ)句中使用GROUP BY要注意三點(diǎn)1:不能使用別名;2:除了函數(shù)字段,select中出現(xiàn)的字段都必須出現(xiàn)在group by中,3:別名不能使用保留字這三點(diǎn)MYSQL都是沒(méi)有要求的!我們?cè)賮?lái)看你這個(gè)語(yǔ)句,如果user表只有一個(gè)字段user_name ,那么這個(gè)語(yǔ)句沒(méi)有問(wèn)題,如果user表有超過(guò)一個(gè)字段,那么這個(gè)語(yǔ)句在mysql是沒(méi)有問(wèn)題的,但是在oracle和sqlserver是有問(wèn)題的

回答5:

select * from user group by user_name;//這么寫其實(shí)也沒(méi)問(wèn)題 但是 實(shí)際上 你使用 group by 的時(shí)候 你需要用的 就只有 user_name 這個(gè)字段吧(通常來(lái)說(shuō))//用什么字段就取什么字段就好。不一定要用 ‘*’ 用誰(shuí)取誰(shuí)就好回答6:

如果存在user_name這個(gè)字段,那么就沒(méi)有問(wèn)題。group by是按字段分組,通常和聚合函數(shù)一起使用,像你這個(gè)sql也是可以執(zhí)行的。只不過(guò)user_name通常都是唯一的,按唯一字段去分組是沒(méi)有意義的。

回答7:

這個(gè)屬于mysql的特殊功能支持,如@xuexiphpa所說(shuō),可以通過(guò)參數(shù)關(guān)掉。

但不建議使用,group by分組后,理論上返回的記錄數(shù)比分組前少了,一般會(huì)通過(guò)聚合函數(shù)來(lái)返回一些統(tǒng)計(jì)數(shù)據(jù)。直接使用select *,就不確認(rèn)返回的是那一條記錄了。

回答8:

一般個(gè)聚合函數(shù)結(jié)合用的比較多

回答9:

group by聚合分組后,select子句中的元素最好只保持:1、常數(shù)2、group by指定的列名3、聚合函數(shù),如count()、avg()、sum(*)等等

你這樣*的結(jié)果,只列出了每一個(gè)分組的一條記錄,而且不知道是第一個(gè)還是是隨機(jī)的一個(gè)值

相關(guān)文章:
主站蜘蛛池模板: 中文字幕第9页 | 亚洲成人三区 | 成人亚洲精品777777ww | 久久9精品 | 成人国产精品视频 | 亚洲免费婷婷 | 国产午夜久久久 | 美女午夜影院 | 免费国产视频 | 国产精品久久 | 国产综合91 | 亚洲综合成人网 | 国产又粗又长又黄视频 | 欧美亚洲一级片 | 成人国产精品 | 无遮挡黄色 | 超碰2019| 全国男人的天堂网 | 天天爽天天操 | 日本精品久久久久久 | 日韩免费一区二区 | 蜜桃网av | 欧美日韩精品在线观看视频 | 国产三级视频在线 | 波多野结衣午夜 | 色综合天天干 | 男女插插插视频 | 91久久精品视频 | 色婷婷在线观看视频 | 国产精品不卡一区 | 中文字幕在线视频一区 | 午夜精品一区二区三级视频 | 国产香蕉精品视频 | 日本免费一区二区三区四区 | а√中文在线资源库 | 国产老头户外野战xxxxx | 在线观看午夜视频 | 国产精品一区二区免费视频 | 欧美一级片在线免费观看 | 毛片毛片毛片毛片毛片毛片毛片 | 青青草视频成人 |