1樓:匿名使用者
select
max(auth_id)+1,
'資料一致性核查',
4,'checkconfig_add',
1,2,
null,
(select auth_id from authority_info where auth_name='資料一致性')
from
authority_info;
那個 max(auth_id)+1 有問題, 建議使用 oracle的 序列號來進行處理.
2樓:我又強力了
select 裡面不應該還有select
declare v_count integer;
begin
select count(*) into v_count from authority_info where auth_name='資料一致性核查';
if v_count=0 then
insert into authority(欄位名)select
欄位from authority_info;end if;
end;
3樓:
把max(auth_id)改成子查詢(select max(auth_id) from authority_info )
oracle,sql語句中對錯誤提示:不是單組分組函式的乙個疑問
4樓:匿名使用者
select deptno,max(count(*)) from emp group by deptno
其中max(count(*))相當於2次分組,那麼對應的select 中的其他列也需要進行2次分組,比如說:
select max(deptno),max(count(*)) from emp group by deptno
原因很簡單,sql語言就面向集合的,如果求出來max(count(*)),那麼deptno需要對應的是哪一條呢?
5樓:匿名使用者
出現「不是單組分組函式」是因為分組後只能用一些彙總的函式,不能用查詢「*」,因為非分組的值不屬於任何分組,所以就報錯了。
舉例: 通過group by進行分組後,可以通過sum進行求和,count進行數值計算。
sql:select username ,count(accountno) as count,sum(amount) as amount
from tablename group by username;
以上就可以求出username下,accountno的條數和對應的總amount。
在oracle裡 group by 分組是怎麼回事 為什麼有時候不加group by說不是單組分組函式?
6樓:
比如你選乙個表的總彙總,比如有乙個員工表,裡面有員工號,部門號,薪資。
然後你想查所有員工的總薪資,那麼使用聚合函式sum來完成,可是你想想,這個需要分組麼?返回結果只有一行,就是表所有行的彙總,所以不需要分組。
而同樣這個表,查詢每個部門的總薪資,就要按照部門分組了,因為查詢的結果是乙個部門一行。
group by肯定是要和聚合函式一起使用的,但是,使用聚合函式,未必就一定分組,因為查詢表所有行當中的彙總,或者最大,或者最小值等等,這些是不需要分組的。
7樓:匿名使用者
當你的查詢語句中有聚合函式(max,min,count,sum)時,就需要用到goup by 分組了。
oracle有關ora-00937:不是單組分組函式
8樓:匿名使用者
sum是分組函式,不能和distinct合用,實際上分組函式已經起了distinct的作用.正確的寫法是
select shop_area_code, sum(cash/100) from ... group by shop_area_code
9樓:匿名使用者
sum是聚合函式,有聚合函式需要用 group by 去分組
select shop_area_code , sum(cash/100) from ...
group by shop_area_code
不是單組分組函式
10樓:犀利的胡茬子
這裡有 你看看
我講的話可以能不權威也不全面
oracle提示錯誤不是單組分組函式
11樓:shine光明飛
count(*),這個函式需要配合group by使用,或者count全表資料。
至於怎麼改,不知道你的業務邏輯是什麼,不好確定,總之你的when後面的條件count(*)不能這麼寫。
oracle提示不是單組分組函式
12樓:大城小小樂
分組是group by ,order by 是排序,把order by 改成group by就好了,提示是因為,用sum()必須用分組函式,望採納
oracle分組函式問題
13樓:我係渣渣輝
規劃局規劃局更好擠公交
sql裡報錯,不是單組分組函式
14樓:力州
你是 想得到的是 平均工資最大的那個部門,還是各個部門的平均工資?
Oracle中的emp表是不是沒有了
emp是scott使用者下的表 查詢此表 select from scott.emp 假如說沒有emp表 手動建立emp表。可以從其他有這個表的人那裡照結構將表建立起來。沒用過orc11,所以不清楚。推薦你個工具 pl sql dev 能很方便的檢視oracle裡面的表並對其進行編輯,很方便的視覺化...
Oracle有哪些常用函式,oracle中常用的函式有哪些?
abs x 函式,此函式用來返回乙個數的絕對值。acos x 函式,返回x的反余弦值。x範圍從1到 1,輸入值從0到派,以弧度為單位。asin x 函式,返回x的反正弦值。x範圍從1到 1,輸入值從 pi 2到pi 2,以弧度為單位。atan x 函式,返回x的反正切值。輸入值從 pi 2到pi 2...
oracle中多表連線如何用,oracle 對於多個大表關聯操作如何優化速度?
以兩表為例 有以下兩張表 現在要通過deptno欄位,在查詢中顯示emp表中全部內容和dept表中的dname欄位。可用如下語句 select a.b.dname from emp a,dept b where a.deptno b.deptno 查詢結果 左連線通用寫法 select from a...
Oracle中的Connect session和process的區別及關係介紹
connect,就是客戶端到伺服器端的乙個物理連線通道。session,是oracle例項中的乙個邏輯組合id。process,是否則session的乙個程序。他們三者的關係,在這裡給你舉個例子。你打 給你爸,當兩邊 撥通時,此時叫做建立了乙個connect,然後你這邊的 機就是乙個程序,叫做客戶端...
mysql 函式中與oracle中ltrim函式功能相同的函
一 ansi字元函式 字元函式用於在sql裡以不同於儲存方式的格式來表示字串。串接就是把兩個單獨的字串組合為乙個。子串的概念就是從字串裡提取一部分。translate函式用於逐字元地把乙個字串變換為另乙個,它通常有3個引數 要被轉換的字串 要轉換的字元系列 代入字元的列表。二 常用字元函式 1 串接...