⑴ 怎樣用一句sql,統計表中不同狀態的行的個數
select系統名稱,
sum(casewhen故障狀態='已處理'then1else0end)as已處理個數,
sum(casewhen故障狀態='未處理'then1else0end)as未處理個數,
count(*)as總個數
from表名
groupby系統名稱
⑵ sql統計行數,但是需要去重中間的重復數據
userId: user id
url: url visited by the user
SELECT userId, COUNT(DISTINCTurl)
FROM tab
GROUP BY userId
ORDER BY COUNT(DISTINCTurl) DESC
(2)sql按行統計擴展閱讀:
group by 解決重復數據的猛磨個數統計適用於各種關系型資料庫,如oracle,SQL Server
查詢重復的數據
select * from (select v.xh,count(v.xh) num from sms.vehicle v group by v.xh) where num>1;
select v.xh,count(v.xh) num from sms.vehicle v group by v.xh having count(v.xh)=2;
刪除重復的數據
create table mayong as (select distinct* from sms.vehicle);
delete from sms.vehicle ;
insert into sms.vehicle select * from mayong;
在oracle中,有個隱藏了自動rowid,裡面給每條記錄一個唯一的rowid,如果想保留最新的一條記錄,就可以利用這個欄位,保留重復數據中rowid最大的一條記錄就可以了。
下面是查詢重復數據的一個例子:
select a.rowid,a.* from 表枝伏斗名廳啟 a
where a.rowid != (select max(b.rowid) from 表名 b where a.欄位1 = b.欄位1 and a.欄位2 = b.欄位2 )
⑶ C#統計sql的行數
直接在C#中做一個資料庫連接,並在C#中執行查詢語句 SELECT COUNT(*) FROM TABLE 然後用SQLDATAREADER來讀取這個值再隨便賦值給控制項或變數就行了啊。
⑷ 如何統計sql中所有的表格和行數
SELECT o.name AS "Table Name", i.rowcnt AS "Row Count"
FROM sysobjects o, sysindexes i
WHERE i.id = o.id
AND i.indid IN(0,1)
AND o.xtype = 'u' --只統計用戶表
AND o.name <> 'sysdiagrams'
ORDER BY i.rowcnt DESC --按行排降序
COMPUTE SUM(i.rowcnt), count(o.name); --匯總行數,表數
GO
⑸ sql統計行數問題
--不明白可以隨時問我 希望採納
select 客戶編號,預期利潤,count(1) 行數 from
(
select 客戶編號,max(銷售單價*訂貨數量-成本單價*訂貨數量) as 預期利潤 from 訂單信息,產品信息
where year(簽定日期)='2013' and month(簽定日期)='4' and 產品信息.產品編號=訂單信息.產品編號
group by 客戶編號
having max(銷售單價*訂貨數量-成本單價*訂貨數量)>10000
) aa
⑹ sql語句中如何統計一行里各個數字的個數
是不是 只會出現 0 和 1 ?
如果是的話:出現1個各數為:
select q1+q2+q3+...+q11 from table;
出現0的各數為:
select 11- ( q1+q2+q3+...+q11) from table;
⑺ 求助:sql如何在查詢記錄後把某一列的sum匯總顯示顯示在每一行並統計出每一行的百分比。不好意思分不夠了
--1.建表
CREATE TABLE emp
(
id INT ,
proct NVARCHAR(10),
quantity INT
)
--2.插入數據
INSERT INTO emp VALUES(1, 'P1', 1)
INSERT INTO emp VALUES(2, 'P2', 2)
INSERT INTO emp VALUES(3, 'P3', 3)
--3.1查詢(SQL2005+)
SELECT *,SUM(quantity) OVER() AS 總數,CONVERT(NVARCHAR(10),CONVERT(NUMERIC(18,2),100.0*quantity/SUM(quantity) OVER()))+'%' AS 佔比 FROM emp
--3.2
SELECT *,(SELECT SUM(quantity) FROM emp) AS 總數,CONVERT(NVARCHAR(10),CONVERT(NUMERIC(18,2),100.0*quantity/(SELECT SUM(quantity) FROM emp)))+'%' AS 佔比 FROM emp
--3.3
SELECT *,CONVERT(NVARCHAR(10),CONVERT(NUMERIC(18,2),100.0*quantity/總數))+'%' AS 佔比 FROM
(
SELECT *,(SELECT SUM(quantity) FROM emp) AS 總數 FROM emp
) S
⑻ sql語句如何統計一行數據的總數
使用累加 就需要用到聚合函數 sum(QTY)
update 表 set QTY=(select sum(QTY) from 表 where LOT_NO not in('20130709014')) where LOT_NO='20130709014'
----------------------------> 如果 LOT_NO 為 20130709014是最後一條記錄,那麼就滿足你的要求,
如果不是最後一條記錄,就按照下面的操作去執行
首先 你要查到你表中的最後一條記錄的 LOT_NO, 然後求出除了最後一條記錄的QTY,最後在根據最後一條記錄的LOT_NO去修改