资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

sqlserver分类,sqlserver分类加序号

sqlserver 分类汇总

select t1.shop,sum(t1.qty) as qty,t2.sum_qty from 表名 as t1,

专注于为中小企业提供成都网站设计、成都做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业武威免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了千余家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。

(select sum(qty) as sum_qty from 表名) as t2

group by  t1.shop,t2.sum_qty

时间条件你自己加一下吧,应该没问题吧?

sqlserver 查询出每种分类的前10条

这里假设表格为:一个类型表和一个新闻表,取出类型表中的每个新闻类型都查出新闻表中属于该类型的最新的前10条

select 标题,编号,时间,类型编号,类型名称 from 

( select 

RANK()OVER(PARTITION BY 新闻表.类型编号 ORDER BY 新闻表.时间 DESC) AS

RANK2, 标题,编号,时间,新闻表.类型编号,类型名称 from 

新闻表 left join 类型表 On 新闻表.类型编号 = 类型表.类型编号) T

where RANK2=10

sqlserver ABC分类怎么算出来

CREATE TABLE #test(

itemCode VARCHAR(10),

itemAmount INT

);

go

INSERT INTO #test

SELECT '1010001', 1000 UNION ALL

SELECT '1010002', 500 UNION ALL

SELECT '1010003', 700 UNION ALL

SELECT '1010004', 200 UNION ALL

SELECT '1010005', 1300 UNION ALL

SELECT '1010006', 1200 UNION ALL

SELECT '1010007', 100 UNION ALL

SELECT '1010008', 600 UNION ALL

SELECT '1010009', 800 UNION ALL

SELECT '1010010', 700 UNION ALL

SELECT '1010011', 500 UNION ALL

SELECT '1010012', 1000 UNION ALL

SELECT '1010013', 300 UNION ALL

SELECT '1010014', 400 UNION ALL

SELECT '1010015', 900 UNION ALL

SELECT '1010016', 800 UNION ALL

SELECT '1010017', 200 UNION ALL

SELECT '1010018', 100 UNION ALL

SELECT '1010019', 1100 UNION ALL

SELECT '1010020', 1200;

go

With MyCte AS

(

SELECT

ROW_NUMBER() OVER( ORDER BY itemAmount DESC ) AS NO,

t.itemCode,

t.itemAmount

FROM

#test t

)

SELECT

itemCode,

itemAmount,

STR( 100 * itemAmount / tSum.itemAmountSum, 5, 2) + '%' AS [占比],

CASE

WHEN (SELECT SUM(itemAmount) FROM MyCte M2 WHERE M2.NO = MyCte.NO ) / tSum.itemAmountSum = 0.5 THEN 'A'

WHEN (SELECT SUM(itemAmount) FROM MyCte M2 WHERE M2.NO = MyCte.NO ) / tSum.itemAmountSum 0.5

AND (SELECT SUM(itemAmount) FROM MyCte M2 WHERE M2.NO = MyCte.NO ) / tSum.itemAmountSum 0.8 THEN 'B'

ELSE 'C' END AS [类别]

FROM

MyCte,

(SELECT SUM(itemAmount) * 1.0 AS itemAmountSum FROM #test) tSum

ORDER BY

MyCte.itemAmount DESC;

itemCode itemAmount 占比 类别

---------- ----------- ------ --

1010005 1300 9.56% A

1010006 1200 8.82% A

1010020 1200 8.82% A

1010019 1100 8.09% A

1010001 1000 7.35% A

1010012 1000 7.35% A

1010015 900 6.62% B

1010016 800 5.88% B

1010009 800 5.88% B

1010010 700 5.15% B

1010003 700 5.15% B

1010008 600 4.41% C

1010002 500 3.68% C

1010011 500 3.68% C

1010014 400 2.94% C

1010013 300 2.21% C

1010017 200 1.47% C

1010004 200 1.47% C

1010007 100 0.74% C

1010018 100 0.74% C

(20 行受影响)

SQL Server 2008 Express 下测试通过.

sql server怎么查出所有的数据并且算出商品总数进行分类

可用如下方法:

以sqlserver2008r2为例,可以从系统表中sys.objects来取字段。

1、打开SQL Server Managment Studio,并登陆到指定数据库。

2、新建一个查询窗口。

3、使用如下语句:

select name from sys.objects where type='U';

查询结果:

其中name列的内容就是当前登陆用户下的所有表名。

SQLServer中使用语句取各分类中的前几条记录

建立表结构如下: CREATE table [dbo].[tmp_Trans]( IDintidentity, PO_NO varchar(20) null, PO_Itemno varchar(20) null, Qty numeric(18,6) null, Trans_Date datetime null, Doc_no varchar(20) null)要求取相同PO_NO按Trans_Date倒序排序的前两条记录。 1.Where子句嵌套SELECT的方式。在嵌套的SELECT语句中可以与主表的字段相关联,达到分类的目的。 这种方式又有三种写法: 1)如果表中有主键,可以用IN的方式。 SELECT * FROM tmp_Trans t WHERE ID IN( SELECT TOP 2 ID FROM tmp_Trans WHERE PO_NO=t.PO_NO ORDER BY Trans_Date DESC)2)如果没有主键,可以用判断在本条记录前有多少条记录的方式。但使用这种方式时如果遇到Trans_Date相同的情况会不准。如当存在Trans_Date最大的记录有三条时,这三条记录都会查出来。 SELECT *FROM tmp_Trans tWHERE (SELECT COUNT(*) FROM tmp_Trans WHERE PO_NO=t.PO_NO AND Trans_DateT.Trans_Date)23)使用CROSS APPLY子句。CROSS APPLY是SQL Server 2005后出来的新功能,用于在表连接时传入参数。 SELECT DISTINCT b.* FROM tmp_Trans a CROSS APPLY(SELECT TOP(2) * FROM tmp_Trans WHERE a.PO_NO=PO_NO ORDER BY Trans_Date DESC) b 2.使用自动生成的Row Number。在使用ROW_NUMBER()时可以用PARTITION BY子句来分组。建议使用这种方式。select * from (

SQL语言分为四类,每类分别是?各包括什么?

sqlserver(T_SQL):

DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)

DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)

DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)

Oracle SQL(P_SQL) 语句可以分为以下几类:

1.数据操作语言语句[Data manipulation language,DML]

2.数据定义语言语句[Data definition language,DDL]

3.事务控制语句[transaction control statement]

4.会话控制语句[session control statement]


分享名称:sqlserver分类,sqlserver分类加序号
文章源于:http://cdkjz.cn/article/dsshgoi.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220