亚洲Aⅴ无码Av红楼在线观看_国产午夜福利涩爱AⅤ_国产sm调教一区二区三区_精品人妻一区二区三区不卡毛片

始創(chuàng)于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業(yè)
  • 60秒人工響應(yīng)
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補(bǔ)償
全部產(chǎn)品
您的位置: 網(wǎng)站首頁 > 幫助中心>文章內(nèi)容

MySQL與Oracle中分組、聚合函數(shù)的區(qū)別

發(fā)布時(shí)間:  2012/9/24 17:16:00

今天需要這樣一句sql:先用group by進(jìn)行分組,然后利用聚合函數(shù)count 或者sum進(jìn)行計(jì)算,并顯示其它的輔助信息。

在MySQL環(huán)境中,我模擬如下環(huán)境:

CREATE TABLE `room` (                     -
 


          `rid` varchar(5) default NULL,         

          `rname` varchar(5) default NULL,       

          `pid` int(11) default NULL,            

          `seq` int(11) NOT NULL auto_increment, 

          PRIMARY KEY  (`seq`)                   

        ) ENGINE=InnoDB DEFAULT CHARSET=utf8  
 房間表,seq房間入住序號(hào)(主鍵),rname為房間名,這里不考慮第三范式

情景:人住房間,

統(tǒng)計(jì)某個(gè)房間某個(gè)人住的次數(shù)

 

用戶表,客人的信息
 
CREATE TABLE `user1` (                  

          `ID` int(11) NOT NULL auto_increment, 

          `USERNAME` varchar(50) default '',    

          `PASSWORD` varchar(50) default '',    

          PRIMARY KEY  (`ID`)                   

        ) ENGINE=InnoDB DEFAULT CHARSET=gbk
 

Mysql中語句如下:

select count(u.username),r.rname,r.rid,r.pid

from room r,user1 u

where r.pid=u.id

group by r.rid,r.pid

這里r.rname并沒有出現(xiàn)在group by子句、聚合函數(shù)中,但是MYSQL中仍然能夠執(zhí)行、列出數(shù)據(jù)。
 
但是,在Oracle中,卻不能。。。
 
Oracle環(huán)境中:

/*

 --顯示:Ora-00979 not a ORDER BY expression

 --因?yàn)椋?order by 后邊的c.channel_code不在ORDER BY子句中

 select count(c.channel_name),m.media_name

  from channel c,media m

  where c.media_code = m.media_code

 group by c.media_code,m.media_name

 order by c.channel_code

 

--顯示:Ora-00979 not a GROUP BY expression

--因?yàn)椋篻roup by 或者聚合函數(shù)中沒有包含c.channel_name

 select count(c.channel_name),m.media_name,c.channel_name

  from channel c,media m

  where c.media_code = m.media_code

 group by c.media_code,m.media_name

  */

--通過:

select count(c.channel_name),m.media_name

  from channel c,media m

  where c.media_code = m.media_code

 group by m.media_name

--正常

select count(c.channel_name),m.media_name

  from channel c,media m

  where c.media_code = m.media_code

 group by c.media_code,m.media_name

 

--正常

select count(c.channel_code),m.media_name

  from channel c,media m

  where c.media_code = m.media_code

 group by c.media_code,m.media_name

 


本文出自:億恩科技【www.allwellnessguide.com】

服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經(jīng)營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經(jīng)營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經(jīng)營性ICP/ISP證:贛B2-20080012
  • 服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:0371-60135900
  • 虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:0371-60135900
  • 專注服務(wù)器托管17年
    掃掃關(guān)注-微信公眾號(hào)
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號(hào)總部企業(yè)基地億恩大廈  法律顧問:河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號(hào)
      0
     
     
     
     

    0371-60135900
    7*24小時(shí)客服服務(wù)熱線