『壹』 sql sum函數的用法
SUM() 函數返回數值列的總數。
具體語法參考:
『貳』 sql 如何在sql語句里使用函數
樓主的邏輯估計不對,應該是用b保質期減去現在日期和a的差,算出來才對。即 b-(現在日期 - a) <0表示過期。
select b-datediff(day,a,getdate()) as DayNum,
IsOvere = case when (b-datediff(day,a,getdate()))<0 then '過期' else '未過期' end
from tablename
『叄』 SQL sum函數的使用方法
選中你想要求和後放在的位置,然後在fx函數後面寫上你的函數=SUM(A2:A21,B2:B21)求和是這樣的函數
這是求A列2-21和B列2-21的和
同樣,求行的話應該寫作=SUM(A2:H2,B3:G3)
這就是求第二行從A到H和第三行B到G的和
這就是多行多列求和中間用半形的逗號隔開
第二種方法:在選擇函數參數的時候,如下圖,點擊參數1,選中要求行的第一行,點擊2,選擇要求和的第二行,最後點擊確定
『肆』 誰知道ado如何使用sql函數
均值、總數、最小值、最大值、總和、標准差、變異數等統計。使用Recordset對象
時,也可使用這些SQL函數。SQL函數包括如下:Avg函數:計算查詢中某一特定欄位資料的算術平均值。 Count函數:計算符合查詢條件的記錄數。 Min, Max函數:傳回指定欄位之中符合查詢條件的第一條、最末條記錄的資料。 First, Last函數:傳回指定欄位之中符合查詢條件的最小值、最大值。 StDev函數:計算指定欄位之中符合查詢條件的標准差。 Sum函數:計算指定欄位之中符合查詢條件的資料總和。 Var,函數:計算指定欄位之中符合查詢條件的變異數估計值。
的結果。ASP程式碼rs21.asp如下:<%Set conn1 = Server.CreateObject("ADODB.Connection") conn1.Open "DBQ=" & Server.MapPath("ntopsamp.mdb") & ";Driver=
{Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;" Set rs2 = Server.CreateObject("ADODB.Recordset")SqlStr = "SELECT Avg(價格) As 平均 From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>Avg: " & rs2("平均")rs2.CloseSqlStr = "SELECT Count(價格) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>Count(價格): " & rs2(0)rs2.CloseSqlStr = "SELECT Count(*) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>Count(*): " & rs2(0)rs2.CloseSqlStr = "SELECT Sum(價格) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>Sum: " & rs2(0)rs2.CloseSqlStr = "SELECT Min(價格) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>Min: " & rs2(0)rs2.CloseSqlStr = "SELECT Max(價格) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>Max: " & rs2(0)rs2.CloseSqlStr = "SELECT First(價格) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>First(價格): " & rs2(0)rs2.CloseSqlStr = "SELECT Last(價格) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>Last(價格): " & rs2(0)rs2.CloseSqlStr = "SELECT First(代號) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>First(代號): " & rs2(0)rs2.CloseSqlStr = "SELECT Last(代號) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>Last(代號): " & rs2(0)rs2.CloseSqlStr = "SELECT StDev(價格) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>StDev: " & rs2(0)rs2.CloseSqlStr = "SELECT Var(價格) From 產品"rs2.Open SqlStr,conn1,1,1Response.Write "<BR>Var: " & rs2(0)rs2.Closeconn1.Close%>SQL函數,詳細描述如下:Avg函數Avg函數,計算查詢中某一特定欄位資料的算術平均值。 語法為Avg(運算式)。運算式,可為欄位名稱、運算式、或一個函數,此函數可
以是一個內部或使用者定義的,但不能為其它的SQL函數。Avg函數在計算時,不包含任何值為 Null 的資料。Count函數Count函數,計算符合查詢條件的記錄條數。 語法為Count (運算式)。運算式,可為欄位名稱、*、多個欄位名稱、運算式、
或一個函數,此函數可以是一個內部或使用者定義的,但不能為其它的SQL函數。Count 函數於計算時,不包含任何值為 Null 的資料。但是,Count(*) 則計算所有符合查詢條件的記錄條數,包含那些Null的資料。 如果Count(欄位名稱) 的欄位名稱為多個欄位,將欄位名稱之間使用 & 分隔。
多個欄位當中,至少有一個欄位的值不為Null的情況下,Count函數才會計算為一條
記錄。如果多個欄位都為Null,則不算是一條記錄。譬如:SELECT Count(價格 & 代號) From 產品First/Last函數 First函數、Last函數,傳回指定欄位之中符合查詢條件的第一條、最末條記錄
的資料。 語法為First(運算式) 和 Last(運算式)。運算式,可為欄位名稱、運算式、或
一個函數,此函數可以是一個內部或使用者定義的,但不能為其它的SQL函數。Min/Max函數 Min函數、Max函數,傳回指定欄位之中符合查詢條件的最小值、最大值。 語法為Min(運算式) 和 Max(運算式)。運算式,可為欄位名稱、運算式、或一個
函數,此函數可以是一個內部或使用者定義的,但不能為其它的SQL函數。StDev函數StDev函數,計算指定欄位之中符合查詢條件的標准差。 語法為StDev(運算式)。運算式,可為欄位名稱、運算式、或一個函數,此函數
可以是一個內部或使用者定義的,但不能為其它的SQL函數。 如果符合查詢條件的記錄為兩個以下時,StDev函數將傳回一個Null 值,該表示
不能計算標准差。Sum函數Sum函數,計算指定欄位之中符合查詢條件的資料總和。 語法為Sum(運算式)。運算式,可為欄位名稱、運算式、或一個函數,此函數可
以是一個內部或使用者定義的,但不能為其它的SQL函數。Sum函數可使用兩個欄位資料運算式,譬如計算產品的單價及數量欄位的合計:SELECT Sum(單價 * 數量) FROM 產品Var函數Var函數,計算指定欄位之中符合查詢條件的變異數估計值。 語法為Var(運算式)。運算式,可為欄位名稱、運算式、或一個函數,此函數可
以是一個內部或使用者定義的,但不能為其它的SQL函數。 如果符合查詢條件的記錄為兩個以下時,Var函數將傳回一個Null 值,該表示不
能計算變異數。
『伍』 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 輸出結果如下:
『陸』 如何在SQL語句中使用FUNCTION
1、function是SQL的函數
是由一個或多個 Transact-SQL 語句組成的子程序,可用於封裝代碼以便重新使用。Microsoft® SQL Server™ 並不將用戶限制在定義為 Transact-SQL 語言一部分的內置函數上,而是允許用戶創建自己的用戶定義函數。
可使用 CREATE FUNCTION 語句創建、使用 ALTER FUNCTION 語句修改、以及使用 DROP FUNCTION 語句除去用戶定義函數。每個完全合法的用戶定義函數名 (database_name.owner_name.function_name) 必須唯一。
必須被授予 CREATE FUNCTION 許可權才能創建、修改或除去用戶定義函數。不是所有者的用戶在 Transact-SQL 語句中使用某個函數之前,必須先給此用戶授予該函數的適當許可權。若要創建或更改在 CHECK 約束、DEFAULT 子句或計算列定義中引用用戶定義函數的表,還必須具有函數的 REFERENCES 許可權。
在函數中,區別處理導致刪除語句並且繼續在諸如觸發器或存儲過程等模式中的下一語句的 Transact-SQL 錯誤。在函數中,上述錯誤會導致停止執行函數。接下來該操作導致停止喚醒調用該函數的語句。
用戶定義函數的類型
2、Procere是SQL的存儲過程
存儲過程是由流控制和SQL語句書寫的過程,這個過程經編譯和優化後存儲在資料庫伺服器中,應用程序使用時只要調用即可。在ORACLE中,若干個有聯系的過程可以組合在一起構成程序包。
存儲過程是利用SQL Server所提供的Transact-SQL語言所編寫的程序。Transact-SQL語言是SQL Server提供專為設計資料庫應用程序的語言,它是應用程序和SQL Server資料庫間的主要程序式設計界面。它好比Oracle資料庫系統中的PL-SQL和 Informix的資料庫系統結構中的Informix- 4GL語言。這類語言主要提供以下功能,讓用戶可以設計出符合引用需求的程序:
1)、變數說明
2)、ANSI兼容的SQL命令(如Select,Update….)
3)、一般流程式控制制命令(if…else…、while….)
4)、內部函數