當前位置:首頁 » 編程語言 » sql統計數據表欄位名和個數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql統計數據表欄位名和個數

發布時間: 2022-08-18 21:13:58

sql怎麼統計個數

方法一:

SELECT SUM(正確數)+SUM(錯誤數) AS 總記錄數,SUM(正確數),SUM(錯誤數)
FROM (
SELECT COUNT(1) 正確數,0 錯誤數
FROM TB
WHERE STATUS=1
UNION ALL
SELECT 0 正確數,COUNT(1) 錯誤數
FROM TB
WHERE STATUS=0) a

方法二:

select count(1)總記錄數,sum(case when status=1 then 1 else 0 end)正確數,sum(case when status=0 then 1 else 0 end) 錯誤數 from T

❷ sql語句統計數量 統計一個欄位出現的數量

1、創建測試表,

create table test_stu(id number, u_name varchar2(20), subject varchar2(20));

create table test_subj(id number, subject varchar2(20));

❸ sql如何查詢一個表並統計表內的數據條數

其實使用select count(1) from Tablename就可以了,沒有必要在裡面寫欄位名的,這樣效率是最高的,後面你也可以跟上條件!

❹ sql如何進行多個欄位的統計個數

一種查詢SQL如下, 利用union獲得b和c各自的統計結果, 然後再一次統計整合到最終結果:

selectsum(d.b_cnt)+sum(d.c_cnt)astotal_cnt,sum(d.b_cnt)asb_cnt,casewhensum(d.b_cnt)=0then''elsed.valendasb_label,sum(d.c_cnt)asc_cnt,casewhensum(d.c_cnt)=0then''elsed.valendasc_labelfrom(selectbasval,count(b)asb_cnt,0asc_,0,count(c)asc_cntfromAgroupbyc)dgroupbyd.val

SQLSerer上的測試結果(欄位次序有變化),

total_cnt為總數, b_label為b欄值, b_cnt為b欄個數, c_labe為c欄值, c_cnt為c欄個數.

這個結果跟欄位是否為整型無關, 它是統計記錄出現的次數.

❺ sql中如何統計一欄位中字元串的個數

declare @s varchar(100)

set @s='156434A27kAsdABCiosd-01&**('

--找出現的次數

select len(@s)-len(replace(@s,'A',''))

SQL中字元串截取函數(SUBSTRING)

1、left(name,4)截取左邊的4個字元

列:

SELECT LEFT(201809,4) 年

結果:2018

2、right(name,2)截取右邊的2個字元

SELECT RIGHT(201809,2) 月份

結果:09

(5)sql統計數據表欄位名和個數擴展閱讀

sql中group by用法:

GROUP BY可以先從字面上來理解,GROUP表示分組,BY後面寫欄位名,就表示根據哪個欄位進行分組,如果有用Excel比較多的話,GROUP BY比較類似Excel裡面的透視表。

GROUP BY必須得配合聚合函數來用,分組之後可以計數(COUNT),求和(SUM),求平均數(AVG)等。

常用聚合函數:count()計數、sum()求和、avg()平均數、max()最大值、min()最小值。

SELECT 語句指定了兩列(Customer 和 SUM(OrderPrice))。"SUM(OrderPrice)" 返回一個單獨的值("OrderPrice" 列的總計),而 "Customer" 返回 6 個值(每個值對應 "Orders" 表中的每一行)。因此,我們得不到正確的結果。不過,您已經看到了,GROUP BY 語句解決了這個問題。

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

輸入代碼

select 名稱
,count(*) as 總數量
,count(case when 類型='A' then 類型 else null end) as 類型為A的數
from 表名
group by 名稱。

就可以統計SQL中某欄位總數和符合某條件的數量。

❼ sql中怎麼統計一個欄位的數量

sqlserver為例
創建表及插入數據
create table 姓名表(id int,u_name varchar(10),subject varchar(10))create table 科目表(id int,s_name varchar(10))insert into 姓名表 values (1,'張三','英語')insert into 姓名表 values (2,'李四','德語')insert into 姓名表 values (3,'王五','日語')insert into 姓名表 values (4,'小明','英語')insert into 姓名表 values (5,'小狗','法語')insert into 科目表 values (1,'英語')insert into 科目表 values(2,'德語')insert into 科目表 values(3,'日語')insert into 科目表 values(4,'法語')
然後需要創建一個視圖
create view v_subjectasselect a.s_name,SUM(case when a.s_name=b.subject then 1 else 0 end) countsfrom 科目表 a left join 姓名表 b on a.s_name=b.subjectgroup by a.s_name執行語句
declare @sql varchar(4000)set @sql = 'select sum(counts) as 合計'select @sql = @sql + ',sum(isnull(case [s_name] when '''+[s_name]+''' then [counts] end,0)) as ['+[s_name]+']'from (select distinct [s_name] from v_subject) as aselect @sql = @sql+' from [v_subject]'exec (@sql)結果截圖

你結果里為什麼會少呢?
這個主要是動態顯示才這么復雜,比如你在科目表裡再加個阿拉伯語,用這個也沒問題,否則用case when的寫法會比較有局限性

❽ sql 查詢怎麼統計多個欄位各自的個數

--所有算的地方都用cast(個數asint)
createtabletest05
(avarchar(10),
bvarchar(10),
cvarchar(10))

insertintotest05select'#','一','三'unionall
select'@','一','三'unionall
select'¥','一','二'unionall
select'%','二','二'
select*fromtest05

selectb,COUNT(b)個數fromtest05groupbyb
selectc,COUNT(c)個數fromtest05groupbyc

selectSUM(isnull(t1.個數,0)+isnull(t2.個數,0))總數,sum(isnull(t1.個數,0))個數,t1.b,sum(isnull(t2.個數,0))個數,t2.cfrom
(selectb,COUNT(b)個數fromtest05groupbyb)ast1fulljoin
(selectc,COUNT(c)個數fromtest05groupbyc)ast2ont1.b=t2.c
groupbyt1.b,t2.c

❾ SQL怎麼統計個數

不同資料庫的系統表可能不一樣,比如informix就是systables

tabname。
informix資料庫:
統計個數:
select
count(*)
from
systables
where
tabname
like
'%abc%'
查看錶:
select
tabname
from
systables
where
tabname
like
'%abc%'
其他資料庫的話,系統表可能是sysobjects,對應的列可能也有不同,看你的情況改吧。

❿ 如何用一條SQL語句得到一個表的所有欄位和記錄條數

說一下幾種思路:
一、如果你的表名是有規律的,就用循環組合成sql,再執行。如:
declare @i int,@sql varchar(1000)
set @i=1
while @i<10
begin
set @sql='select count(*) from table'+convert(varchar,@i)
exec @sql
end

二、把表名從系統表裡取出,來組成sql
select ''select count(*) from '+name from sysobjects where xtype='u'
再把sql取出來執行既可。

三、如果你有興趣研究,還可以使用微軟未公開的存儲過程來處理 sp_MSforeachtable。這個就不詳寫了。