1. sql語句查詢某欄位的數據總和,並列出表中的所有記錄。
1、首先,創建一個測試表,相關代碼如下,進入下一步。
2. sql如何輸出一個資料庫所有表的數據統計
試一下如下代碼:
Private Sub Command1_Click()
Dim ADOrs As New Recordset
Dim ADOcn As New ADODB.Connection
Dim Yourt As New ADODB.Recordset
Dim Mystr As String
ADOcn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=d:\db1.mdb" '修改成自己的文件路徑及名稱
Print "表名", "記錄數"
Set ADOrs = ADOcn.OpenSchema(adSchemaTables)
Do Until ADOrs.EOF
If ADOrs("Table_type") = "TABLE" And Left(ADOrs("Table_name"), 7) <> "~TMPCLP" Then
Mystr = "select * from " & ADOrs!table_name
Yourt.Open Mystr, ADOcn, 3, 1
Print ADOrs!table_name, str(Yourt.RecordCount)
ADOrs.MoveNext
Yourt.Close
Set Yourt = Nothing
Else
ADOrs.MoveNext
End If
Loop
End Sub
3. SQL如何統計多表總記錄數
有2個方法:
1、select
*,(select
count(u_id)
from
h_travel_line
where
u_id
=
a.u_id)
已線路數
from
h_travel
a
2、SELECT
c.ttt
AS
已線路數,
h_travel.*
FROM
h_travel
INNER
JOIN
(SELECT
COUNT(*)
AS
ttt,
u_id
FROM
h_travel_line
GROUP
BY
STID)
c
ON
h_travel.u_id
=c.u_id
4. SQL2000 查詢資料庫中表的記錄數,並按照從多到少的順序排列
假設student表有兩個欄位:name和age,張三是20歲,李四是21歲,王五是22歲
SQL語句:select * from student order by age desc
查詢結果:王五 22
李四 21
張三 20
SQL語句:select * from student order by age
查詢結果:張三 20
李四 21
王五 22
第二條sql語句沒有加desc,默認是升序:asc
還是沒看明白你的問題,難道是查詢某個資料庫中的每張表的記錄行數?但你說的是列數!建議你還是直接寫SQL語句上來!
江湖三腳貓同志寫的語句還是不錯的,但估計是沒有執行過的sql語句,真正執行,可能會有一點小瑕疵,order by count 的前提是有count這個列名,這條sql語句執行的話,列名應該是「count(*)」之類的吧?oracle中是這樣的,SQL Server不記得了,貌似也是這樣的列名,所以建議寫成 select count(1) as count 這個樣子,這樣一來,再order by count就肯定沒問題了。
我是覺得不用存儲過程,用SQL語句就可以實現,只不過用一個嵌套式的sql罷了,建議提問的這位兄弟自己琢磨一下,或者將問題描述清楚,否則真的是 愛莫能助,good luck !
5. 如何用一條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。這個就不詳寫了。