我試圖從以特定字母開頭的 sys.tables 中的所有列中找出記錄數。
目前我有這樣的事情:
SELECT c.name AS 'ColumnName'
,t.name AS 'TableName'
FROM sys.columns c JOIN sys.tables t ON c.object_id = t.object_id
WHERE c.name LIKE 'u%'
ORDER BY TableName
,ColumnName;
有沒有辦法可以將列記錄數添加到此?
塔克斯,米格爾
uj5u.com熱心網友回復:
很難理解是什么number of column records意思,但這里有兩個選項。
總數
SELECT TotalColumns = COUNT(*) FROM sys.columns WHERE name LIKE N'u%'; -- always use N prefix for system metadata每桌計數
SELECT t.name, TotalColumns = COUNT(*) FROM sys.columns AS c INNER JOIN sys.tables AS t ON c.[object_id] = t.[object_id] WHERE c.name LIKE N'u%' GROUP BY t.name;
如果您不是這些事情中的任何一個,那么請向我們展示您想要作為輸出的示例。
uj5u.com熱心網友回復:
嘗試這個:
SELECT c.name AS 'ColumnName'
,t.name AS 'TableName',
count(*) AS num
FROM sys.columns c JOIN sys.tables t ON c.object_id = t.object_id
WHERE c.name LIKE 'u%'
GROUP BY c.name, t.name
ORDER BY TableName
,ColumnName;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/313283.html
標籤:sql sql-server 查询语句
上一篇:分組平均值
