當前位置:首頁 » 存儲配置 » 存儲過程count

存儲過程count

發布時間: 2022-12-22 13:05:27

⑴ 創建一個存儲過程proc_count ,能夠統計男教師,女教師的人數,並返回男教師,女教師人數。

CREATE PROCEDURE P1(@M INT OUTPUT,@W INT OUTPUT) AS
SELECT @M=COUNT(CASE WHEN 性別='男' THEN 1 END),@W=COUNT(CASE WHEN 性別='女' THEN 1 END) FROM 教師表
GO

調用方法:
DECLARE @M INT,@W INT
EXEC P1 @M OUTPUT,@W OUTPUT
SELECT @M AS 男教師人數,@W AS 女教師人數

⑵ mysql 資料庫中有一張 交易記錄表,存儲過程中想通過count函數查出30天內的交易數、60天的交易數

可直接用嵌套查詢。

方法如下:
如數據:
id name
1 a
1 b
2 c
2 d
3 e
3 f
3 g
3 h

select count(t.counts) from
(select id,count(*) counts from 表名 group by id) t

這樣得到的結果就是3。

⑶ 用SQL語言,寫出.創建存儲過程EmpCount,它的功能是根據給定的部門名稱統計該部門的員工人數。

GO
create procere EmpCount
@DepartName varchar(50),

@EmpPersons int out

as

select @EmpPersons=count(*) from 員工表 where 部門名稱=@DepartName
GO
條件給的太籠統,自己改改吧!!

⑷ 怎麼在存儲過程中把 select count from tb1的返回值賦給變數

int count=Convert.Toint32(cmd.ExecuteScalar());
cmd.executescalar()得到的結果是數據表的第一行第一列的數據,
其結果是object類型的,需要強制轉換為int類型。

⑸ 存儲過程怎麼用在什麼情況下要用到存儲過程

舉個例子吧,用戶登錄模塊:先創建存儲過程CREATE PROCEDURE Prc_Ad_Login @AdName varchar(32), @AdPwd nchar(32), @Count int output, @Err varchar(64) output ASif exists(select intsuid from sysuser where varsuname=@AdName)begindeclare @suid int declare @dteErrs datetime declare @npwd nchar(32) declare @Lock bit declare @intErr int declare @Errpart int declare @ErrCount int select @suid=intsuid, @dteErrs=dteErr,@intErr=intErrCount,@npwd=narsupwd,@lock=bitLock from sysuser where varsuname=@Adname select @ErrCount=intsuerrcount,@Errpart=intsuerrminute from sysbasic if(@npwd=@Adpwd)beginif(@Lock=1)beginselect @Count=2 select @Count=0endendelsebeginif(@Lock=0)beginif(datediff(n,@dteErrs,getdate())<@Errpart)beginif(@intErr<@ErrCount)beginupdate sysuser set intErrCount=intErrCount+1,dteErr=getdate() where intsuid=@suid if(@intErr=(@ErrCount-1))beginselect @Count=4 select @Err='登錄錯誤過多,你的帳號被系統暫時鎖定!'endelsebeginselect @Count=1 select @Err='用戶名或密碼錯誤!'endendelsebeginupdate sysuser set dteErr=getdate() where intsuid=@suid select @Count=3 select @Err='你的帳號在一定時間內不允許登錄!'endendelsebeginupdate sysuser set dteErr=getdate(),intErrCount=1 where intsuid=@suid select @Count=1

⑹ SQL 存儲過程 count()計算相同id的行數,然後用sum如何把相同id的行數相加

再套一層
select sum(c1) from (
select count (*) c1 from [caigoujinhuodetail(采購進貨詳細)]
group by [caigoujinhuodetail(采購進貨詳細)].spdm,[caigoujinhuodetail(采購進貨詳細)].spggdm
) a

⑺ sql中count函數的使用

COUNT() 函數返回匹配指定條件的行數。

SQL COUNT(column_name) 語法

COUNT(column_name) 函數返回指定列的值的數目(NULL 不計入):

SELECT COUNT(column_name) FROM table_name;

SQL COUNT(*) 語法

COUNT(*) 函數返回表中的記錄數:

SELECT COUNT(*) FROM table_name;

SQL COUNT(DISTINCT column_name) 語法

COUNT(DISTINCT column_name) 函數返回指定列的不同值的數目:

SELECT COUNT(DISTINCT column_name) FROM table_name;

注釋:COUNT(DISTINCT) 適用於 ORACLE 和 Microsoft SQL Server,但是無法用於 Microsoft Access。

SQL COUNT(column_name) 實例

下面的 SQL 語句計算 "access_log" 表中 "site_id"=3 的總訪問量:

實例

SELECT COUNT(count) AS nums FROM access_log
WHERE site_id=3;

SQL COUNT(*) 實例

下面的 SQL 語句計算 "access_log" 表中總記錄數:

實例

SELECT COUNT(*) AS nums FROM access_log;

執行以上 SQL 輸出結果如下:

⑻ 存儲過程查詢select count(*)from table返回的是bool類型的怎麼回事

1. 別名 不應該 用 單引號括起來, 應該是 :

SELECT COUNT(*) sums
FROM [pos].[參數_黑名單_區域] WHERE 1=1

2. 存儲過程應該有用 out 參數進行 數據返回才對。

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:600
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:892
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:585
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:769
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:689
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1016
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:261
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:119
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:809
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:718