sql資料庫上的select sum功能如何實現符合條件的不

2022-03-08 07:52:39 字數 4318 閱讀 5607

1樓:匿名使用者

首先:你這個表結構設計的就太不合理, 資料量大的時候查詢將非常耗時耗資源。

你的問題是否可以這樣理解?輸入一個日期, 將改日期下a b c的數量(如果存在記錄)求和輸出?但是這樣問題就出來了, 也就是說你只能每次查詢一個日期下的數量總和, 而不能按日期來彙總數量總和, 所以說設計的結構不合理!

其次:你要的這個功能, 可以實現。

思路:必定要用拼接語句, 動態查詢出所有存在的唯一日期, 逐個日期查詢a b c的數量, 求和!這樣查詢出來的就是按日期彙總的數量了。

不知道你是否理解?

2樓:解0人

這樣declare @sdate dateselect @sdate='2013/9/5'

select sum(

case when a日期=@sdate then a數量 else 0 end +

case when b日期=@sdate then b數量 else 0 end +

case when c日期=@sdate then c數量 else 0 end

) as 總數

from 表名

祝你成功!

3樓:匿名使用者

你是想查詢a數量+b數量=24的資料嗎??

sql查詢語句按條件統計欄位值並在一個表中多列顯示

4樓:

select sum(case when con1||con2='11' then count else 0 end) 三星筆記本,

sum(case when con1||con2='12' then count else 0 end) 三星桌上型電腦,

sum(case when con1||con2='22' then count else 0 end) 蘋果筆記本,

sum(case when con1||con2='22' then count else 0 end) 蘋果桌上型電腦

from table_name

另外用decode一樣可以替代case when,效率一樣

5樓:匿名使用者

select sum(case

when con1 = 1 and con2 = 1 thencount

else

0end) 三星筆記本,

sum(case

when con1 = 1 and con2 = 2 thencount

else

0end) 三星桌上型電腦,

sum(case

when con1 = 2 and con2 = 1 thencount

else

0end) 蘋果筆記本,

sum(case

when con1 = 2 and con2 = 2 thencount

else

0end) 蘋果桌上型電腦

from table_name;

6樓:上善若水

select case when t.con1=1 and t.con2=1 then t.count else 0 end as '三星筆記本',

case when then else end from 表名字 t

就照這樣寫

7樓:匿名使用者

group by 按 con1 con2 分組 然後sum

求sql查詢語句,表的列資料按照條件不同輸出為不同的列,並統計個數。

8樓:匿名使用者

select distinct(單位),count(單位) as 型別

數量,sum(case when  型別=1 then 1 else 0 end)  as 型別為1 ,

sum(case when 型別=2 then 1 else 0 end) as 型別為2,

sum(case when 型別=3 then 1 else 0 end) as 型別為3

from sh1

group by 單位

已測試,結果:

a2110

b3111

c1010

也祝福您專身體健康,多金多福 ,快屬採納,哈哈!

9樓:匿名使用者

select 單位

zhi,

sum(case 型別

dao when '1' then 1 else 0 end) as 型別為

版1,sum(case 型別 when '2' then 1 else 0 end) as 型別為2,

sum(case 型別 when '3' then 1 else 0 end) as 型別為3

from 表權a group by 單位

sql語句,如何對同一列資料中不同的值,計數

10樓:匿名使用者

|select bg_severity,count(*) as row_count

from 表名

du group by bg_severity

結果:zhi

daobg_severity row_count

1-低專 xx

2-中 xx

1-高 xx

select sum(case when bg_severity = n'1-低' then 1 else 0 end) as [1-低],

sum(case when bg_severity = n'2-中' then 1 else 0 end) as [2-中],

sum(case when bg_severity = n'3-高' then 1 else 0 end) as [3-高]

from 表名

結果:1-低 |屬2-中 |3-高

xx |xx | xx

11樓:匿名使用者

select bg_severity,count(*) from 表名 group by bg_severity

如何用select語句在sql資料庫中查詢符合指定條件的記錄?

12樓:匿名使用者

select [要查詢copy的欄位] from [表名]where [指定的bai查詢條件]

有記得需要

說明du的是,如果存在多個條件時zhi需dao要用and 連線每個查詢條件,如果需要排序,語法則為:

select [要查詢的欄位] from [表名]where [指定的查詢條件]

order by [要分組的欄位]

13樓:鄧顯軍

描述:sql server 資料庫中抄使用條件查詢就可以實現符合查詢條件的資料記錄顯示出來。查詢語法為:

select * from 表名 where 欄位名=條件(語法說明:select後面的*號代表的是所有欄位顯示出來。條件出的條件如果為字元型條件需要使用單引號引起來,如果是int型別不用引號),以下以某資料中的一張資料表user_user為例子,分別使用兩種查詢方式:

1、完整條件查詢語法為:select * from 表名 where 欄位名=條件

查詢語句:select * from user_user where dname='管理員'

2、模糊查詢條件查詢語法為:select * from 表名 where 欄位名 like '%條件%'  。這裡的條件只需要其中一個字元能夠與欄位中的符合都能夠顯示出來。

查詢語句:select * from user_user where dadd like '%貴%'

14樓:匿名使用者

select *from table_name

where /這後面就寫條件 你指定的東西 比如 name='李小龍'之類的

15樓:一個網際網路使用者

老鐵,你好

select * from 表名 where 條件。。。

sql查詢同一表中不同條件的同欄位sum

16樓:

使用case when

如 (case when 屬性='國有重點' then 應淘汰數 else 0 end ) as 應淘汰國有,

(case when 屬性='國有地方' then 應淘汰數 else 0 end ) as 應淘汰地方,

如何統計sql中某欄位總數和符合某條件的數量?

SQL資料庫恢復方法,求助大家,SQL資料庫如何還原

看你資料庫檔案裝在那個盤裡面,我想肯定不是c盤。將你的資料檔案和日誌檔案拷出來儲存好,重灌系統,重灌sql2000,之後將你儲存好的兩個檔案放在d盤下可以建立一個sql data的資料夾專門用來存放資料庫產生的資料檔案和日誌檔案,之後將這兩個檔案附加到你sql企業管理器上,設定好安全性,做好定期維護...

sql資料庫和oracle資料庫string型別欄位用orderby排序分別是根據什麼排序的啊

首先說明下oracle中沒有string型別,而是varchar型別。order by 的順序是assic 讀作 阿斯科馬 碼錶中 字元 列進行排序的。解釋 一般會根據字串的首字母 大些字母 小寫字母 特殊字元 數字。如果首位相同繼續排列第二位,直到不同的位。sql資料和oracle資料庫都沒有st...

關於SQL資料庫

樓主兄弟你好!建立資料的sql語句 資料檔案,和日誌檔案,是小括號而不是大括號 字元型資料name student data 要用 引起來 create database studenton name student data filename d student data.mdf size 1,f...