⑴ 這個sql語句怎麼寫:統計出某個欄位里內容為空的數據有幾條
如果 ID 欄位是數字型,則用:select count(id) from A where id is null or id=0
如果是字元型,則是:select count(id) from A where id is null or id=''
沒有輸入過內容的是 Null。但輸入過內容再清空的,就是 0 或空了。
⑵ 如何計算SQL其中一個欄位的數據個數
你可以通過
select
count(*)
into
temp
from
tablename
where...
通過變數temp來返回符合要求的記錄數
⑶ SQL 我想統計 某一個表中的一個欄位里所有值為空的數據的數量 如何寫 並把得出來的數量 寫入另一個表中
如果表存在
用
insert into 新表(欄位1) select count(*) from 舊表 where 某欄位 is null;
如果表不存在
create table 新表名 as select count(*) from 舊表 where 某欄位 is null;
或者
select count(*) into 新表名 from 舊表 where 某欄位 is null;
⑷ 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
(4)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 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 server怎麼設計程序統計出一個字元串中的字母空格數字的個數
字元串左邊的空格用ltrim()去除,右邊的用rtrim()去除!
例如:
select
rtrim('woshigehaoren
')
結果是woshigehaoren
select
ltrim('
woshigehaoren')
結果是woshigehaoren
如果是字元串中間有空格的話只能替換,
去除不了的
例如:
select
replace('wo
shi
ge
hao
ren','
','')
結果是woshigehaoren
如果左邊有空格,
右邊也有空格,
中間也有空格可以這樣去除
select
replace(ltrim(rtrim('
wo
shi
ge
hao
ren
')),'
','')
⑺ 用SQL sever 語句,統計一個字元串的字母、數字、空格的個數,分別用列的形式表示出來。
CREATE TABLE TSET_VAR
(
NAME VARCHAR(200)
)
INSERT INTO TSET_VAR VALUES ('AAS12');
INSERT INTO TSET_VAR VALUES ('1AA@@S12');
INSERT INTO TSET_VAR VALUES ('12##1A');
INSERT INTO TSET_VAR VALUES ('AA S 1# 2');
create function tj
(
@str varchar(8000)
)
returns @s table (空格 int,數字 int,字母 int,其他 int)
AS
BEGIN
declare @i int = 1
declare @kg int = 0
declare @sz int =0
declare @zm int =0
declare @qt int =0
declare @x varchar(2000)
while(@i<=(LEN(@str)))
begin
set @x =SUBSTRING(@str,@i,1)
IF (@x =' ')
begin
set @kg =@kg+1
end
else if (PATINDEX('[0-9]',@x)!=0)
begin
set @sz=@sz +1
END
ELSE IF (PATINDEX('[A-Za-z]',@x))!=0
begin
set @zm =@zm+1
end
else
begin
set @qt =@qt+1
end
set @i=@i+1
end
INSERT @s VALUES(@kg,@sz ,@zm,@qt )
return
END
SELECT * FROM TSET_VAR OUTER APPLY DBO.TJ(NAME)
參考:http://..com/link?url=xQnt4y1ElEV-VlhKZsuzj3AI449l-2Ca9kVB--RKtOfWX1FbJyEAKmMyUm0DZ0hKEli
⑻ sql里怎樣統計一個欄位中某個字元出現的個數
用replace
,
將空格替換成『』,就是空的,
然後跟原先的字元長度比較,
得出的就是字元串的個數。
嘿嘿~
剛剛想到的。
select
id,
len(nr)
-
len(replace(nr,'
'
,
'')
)
from
temp
⑼ SQL語句統計多個欄位某個字元的個數
1.這個很好解決,就是工具自己的數據字元串的最長可能出現的長度來選擇對應該列的數據類型,
2.其中varchar,char類型可以存放8000個字元,而text類型則能存儲2g個字元,相信應該夠用了,
3.使用sql語句向欄位中存儲字元串的語句如下:
update
表名
set
欄位名=你要存儲的字元串呵呵,希望能有幫助,^_^
⑽ 用t-sql語句 統計一個字元串中數字,字母,空格以及其他字元的數量
CREATE TABLE TSET_VAR
(
NAME VARCHAR(200)
)
INSERT INTO TSET_VAR VALUES ('AAS12');
INSERT INTO TSET_VAR VALUES ('1AA@@S12');
INSERT INTO TSET_VAR VALUES ('12##1A');
INSERT INTO TSET_VAR VALUES ('AA S 1# 2');
create function tj
(
@str varchar(8000)
)
returns @s table (空格 int,數字 int,字母 int,其他 int)
AS
BEGIN
declare @i int = 1
declare @kg int = 0
declare @sz int =0
declare @zm int =0
declare @qt int =0
declare @x varchar(2000)
while(@i<=(LEN(@str)))
begin
set @x =SUBSTRING(@str,@i,1)
IF (@x =' ')
begin
set @kg =@kg+1
end
else if (PATINDEX('[0-9]',@x)!=0)
begin
set @sz=@sz +1
END
ELSE IF (PATINDEX('[A-Za-z]',@x))!=0
begin
set @zm =@zm+1
end
else
begin
set @qt =@qt+1
end
set @i=@i+1
end
INSERT @s VALUES(@kg,@sz ,@zm,@qt )
return
END
SELECT * FROM TSET_VAR OUTER APPLY DBO.TJ(NAME)