求SQL语句一条,,,搞了半天没高出来,谢谢各位大鸟。。。

wangjunloverqq 2012-06-01 02:32:23

表的脚本是:

CREATE TABLE TB1
(
SendMan VARCHAR(20),
SendDate datetime,
SaleOrderCode VARCHAR(20)
)
INSERT INTO TB1 VALUES('小王','2012-5-1','FB001')
INSERT INTO TB1 VALUES('小王','2012-5-1','FB002')
INSERT INTO TB1 VALUES('小王','2012-5-2','FB003')
INSERT INTO TB1 VALUES('小王','2012-5-3','FB004')
INSERT INTO TB1 VALUES('小王','2012-5-3','FB0044')

INSERT INTO TB1 VALUES('小李','2012-5-1','FB005')
INSERT INTO TB1 VALUES('小李','2012-5-2','FB006')
INSERT INTO TB1 VALUES('小李','2012-5-3','FB007')
INSERT INTO TB1 VALUES('小李','2012-5-4','FB008')

INSERT INTO TB1 VALUES('小张','2012-5-2','FB009')
INSERT INTO TB1 VALUES('小张','2012-5-3','FB0010')
INSERT INTO TB1 VALUES('小张','2012-5-4','FB0011')
INSERT INTO TB1 VALUES('小张','2012-5-5','FB0012')

我要的结果是 类似下面图片这样的。

其中 数量 是根据 SaleOrderCode 的个数确定的。
谢谢各位了。
...全文
117 7 打赏 收藏 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
王思明 2012-06-01
  • 打赏
  • 举报
回复
樓主,要給辛苦分呀!我都是自己寫的
王思明 2012-06-01
  • 打赏
  • 举报
回复
select  location, sum(case when state = '在架' then 1 else 0 end) as '在架',
sum(case when state = '報廢' then 1 else 0 end) as '報廢',
sum(case when state = '出倉' then 1 else 0 end) as '出倉',
sum(1) as '小計' from Test group by location
wangjunloverqq 2012-06-01
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

SQL code
declare @sql varchar(8000)
select
@sql=isnull(@sql+',','')
+'sum(case when SendMan='''+SendMan+''' then 1 else 0 end) as ['+SendMan+']'
from
(select distinct SendMan from tb1) t
--print……
[/Quote]
感谢+崇拜,哎,,惭愧 自己业务不精,要学的东西太多了。。
刚才另外一个帖子本来要跟分给你的,结贴时 点错人了,你下面几个的回复和你的是一样的,回复给他们了。。。抱歉。。。。
Felixzhaowenzhong 2012-06-01
  • 打赏
  • 举报
回复
CREATE TABLE TB1
(
SendMan VARCHAR(20),
SendDate datetime,
SaleOrderCode VARCHAR(20)
)
INSERT INTO TB1 VALUES('小王','2012-5-1','FB001')
INSERT INTO TB1 VALUES('小王','2012-5-1','FB002')
INSERT INTO TB1 VALUES('小王','2012-5-2','FB003')
INSERT INTO TB1 VALUES('小王','2012-5-3','FB004')
INSERT INTO TB1 VALUES('小王','2012-5-3','FB0044')

INSERT INTO TB1 VALUES('小李','2012-5-1','FB005')
INSERT INTO TB1 VALUES('小李','2012-5-2','FB006')
INSERT INTO TB1 VALUES('小李','2012-5-3','FB007')
INSERT INTO TB1 VALUES('小李','2012-5-4','FB008')

INSERT INTO TB1 VALUES('小张','2012-5-2','FB009')
INSERT INTO TB1 VALUES('小张','2012-5-3','FB0010')
INSERT INTO TB1 VALUES('小张','2012-5-4','FB0011')
INSERT INTO TB1 VALUES('小张','2012-5-5','FB0012')

select * from TB1


declare @sql varchar(8000)
select
@sql=isnull(@sql+',','')
+'sum(case when SendMan='''+SendMan+''' then 1 else 0 end) as ['+SendMan+']'
from
(select distinct SendMan from TB1 ) t
exec ('select convert(varchar(10),SendDate,120) as 日期,'+@sql+' from TB1 group by convert(varchar(10),SendDate,120)')
/*
日期 小李 小王 小张
2012-05-01 1 2 0
2012-05-02 1 1 1
2012-05-03 1 2 1
2012-05-04 1 0 1
2012-05-05 0 0 1
*/
王思明 2012-06-01
  • 打赏
  • 举报
回复
竟然和我的問題一樣。。。哈哈


if object_id('TEST') is not null drop table TEST

create table TEST
(location varchar(15),
state varchar(5),
product varchar(150)
)
--有兩種三種狀態 在架 報廢 出倉
insert into TEST
select '01-01-01','在架','01'
union select '01-01-01','在架','02'
union select '01-01-01','報廢','S3'
union select '01-01-02','在架','PP'
union select '01-01-02','在架','SS'
union select '01-01-02','出倉','GG'

select * from Test




位置 在架 報廢 出倉 小計
01-01-01 2 1 0 3
01-01-02 2 0 1 3


AcHerat 元老 2012-06-01
  • 打赏
  • 举报
回复
CREATE TABLE TB1
(
SendMan VARCHAR(20),
SendDate datetime,
SaleOrderCode VARCHAR(20)
)
INSERT INTO TB1 VALUES('小王','2012-5-1','FB001')
INSERT INTO TB1 VALUES('小王','2012-5-1','FB002')
INSERT INTO TB1 VALUES('小王','2012-5-2','FB003')
INSERT INTO TB1 VALUES('小王','2012-5-3','FB004')
INSERT INTO TB1 VALUES('小王','2012-5-3','FB0044')

INSERT INTO TB1 VALUES('小李','2012-5-1','FB005')
INSERT INTO TB1 VALUES('小李','2012-5-2','FB006')
INSERT INTO TB1 VALUES('小李','2012-5-3','FB007')
INSERT INTO TB1 VALUES('小李','2012-5-4','FB008')

INSERT INTO TB1 VALUES('小张','2012-5-2','FB009')
INSERT INTO TB1 VALUES('小张','2012-5-3','FB0010')
INSERT INTO TB1 VALUES('小张','2012-5-4','FB0011')
INSERT INTO TB1 VALUES('小张','2012-5-5','FB0012')
go

declare @sql varchar(8000)
set @sql = 'select convert(varchar(10),senddate,120) as date'
select @sql = @sql+',sum(case sendman when '''+sendman+''' then 1 else 0 end) as ['+sendman+']'
from tb1 group by sendman
select @sql = @sql + ' from tb1 group by convert(varchar(10),senddate,120)'
exec(@sql)

drop table tb1
百年树人 2012-06-01
  • 打赏
  • 举报
回复
declare @sql varchar(8000)
select
@sql=isnull(@sql+',','')
+'sum(case when SendMan='''+SendMan+''' then 1 else 0 end) as ['+SendMan+']'
from
(select distinct SendMan from tb1) t
--print @sql
exec ('select convert(varchar(10),SendDate,120) as 日期,'+@sql+' from tb1 group by convert(varchar(10),SendDate,120)')

/**
日期 小李 小王 小张
---------- ----------- ----------- -----------
2012-05-01 1 2 0
2012-05-02 1 1 1
2012-05-03 1 2 1
2012-05-04 1 0 1
2012-05-05 0 0 1

(5 行受影响)
**/
下载代码方式:https://pan.quark.cn/s/a4b39357ea24 【创新7.1声卡KX驱动+连线图】是一款专门为创新公司所制造的7.1音频声卡量身定制的驱动方案,其核心宗旨在于为用户带来超越官方原生驱动程序的卓越音质感受。KX驱动属于一种由爱好者群体自主开发的非官方驱动软件,该驱动在Creative公司原版驱动程序的基础上进行了深度改良与功能扩充,旨在提供更为多样化的声音调节参数以及更为出色的运行表现。 我们现在来详细认识一下7.1声道系统。7.1声道代表的是一种沉浸式音频技术规范,该规范包含七个全频域音箱单元(具体包括前置左声道、前置右声道、中央声道、环绕左声道、环绕右声道、后置左声道以及后置右声道)搭配一个低频震动单元,其设计目的是为用户构建更加立体且逼真的听觉场景,尤其适合应用于电子游戏、电影观影以及音乐欣赏等场景。 KX驱动的独到之处在于其赋予了用户更为广阔的个性化定制权限,使用者能够依据自身的听音偏好对音频参数进行细致调节,例如均衡器参数、混响效果、压缩比设定、噪声抑制门限等,从而使得最终的音效呈现出更为精致且个性化的特质。不仅如此,KX驱动还兼容VST插件机制,该机制是虚拟乐器与音频效果处理软件的通用标准,用户通过安装各式各样的VST插件,能够进一步增强声卡的实用功能,例如模拟多种乐器音色或达成复杂的声音效果制作。 在获取并部署KX驱动程序之后,对"连线图"的正确导入工作具有决定性意义。连线图又被称为音频路由配置图或信号流向示意图,它是一份用于指导用户如何正确配置并连接各个音频输出通道的视觉化手册。对于非专业背景的使用者而言,准确设定这些音频通道可能会面临一定程度的困难,因此连线图的提供极大地简化了这一过程。依照连线图进行配置操...
内容概要:本文介绍了基于粒子群优化算法(PSO)优化长短期记忆网络(LSTM)的电力负荷预测方法,并通过Python代码实现。该方法结合PSO强大的全局搜索能力,对LSTM模型的关键超参数进行智能寻优,有效提升了模型在处理非线性、强时序性电力负荷数据时的预测精度与泛化性能。文中系统阐述了从数据预处理、模型构建、PSO优化流程到预测结果分析的完整技术链条,重点展示了如何通过优化算法克服传统LSTM参数依赖经验设定的局限性,为复杂时间序列预测提供了高效解决方案。; 适合人群:具备一定Python编程能力和机器学习基础知识,从事电力系统分析、能源管理、负荷预测等相关领域的研究人员、工程师以及高校研究生。; 使用场景及目标:①应用于电力系统的短期与中期负荷预测,提升电网调度的准确性与经济性;②作为智能优化算法与深度学习融合的典型范例,用于科研项目开发与教学实践;③目标在于通过超参数自动优化,显著降低预测模型的均方根误差(RMSE)和平均绝对百分比误差(MAPE),增强模型的鲁棒性与实用性。; 阅读建议:建议读者结合所提供的完整Python代码,深入理解PSO优化LSTM的具体实现过程,重点关注适应度函数的设计、参数编码方式及优化迭代机制,并鼓励在自有数据集上进行复现实验与调参优化,以深刻掌握模型性能提升的技术路径。
内容概要:本文系统研究了输入扩张技术对归一化最小均方(NLMS)算法在稳态条件下过剩均方误差(EMSE)的影响,并提供了完整的Matlab代码实现。通过严谨的理论推导与详实的仿真实验,深入探讨了输入信号经线性扩张处理后对NLMS算法收敛性能和稳态误差的优化作用。研究不仅阐明了不同扩张方式与参数配置对EMSE的具体改善效果,还定量分析了其对算法收敛速度与稳定性的影响,旨在为自适应滤波系统的性能优化与工程设计提供坚实的理论依据和有效的技术手段。; 适合人群:具备信号处理、自适应滤波等专业知识的研究生、科研人员及工程技术人员,要求熟练掌握Matlab编程语言,并拥有基本的算法仿真实现经验。; 使用场景及目标:①深入探究NLMS算法在不同输入信号条件下的稳态性能表现规律;②通过Matlab仿真平台,验证输入扩张技术在降低EMSE方面的有效性与实用性;③为自适应滤波器的设计选型、参数整定与性能优化提供直接的技术支持和可靠的实验参考。; 阅读建议:建议读者紧密结合所提供的Matlab代码,深入理解算法的实现细节,重点关注输入扩张模块的设计原理与EMSE的计算流程。同时,鼓励通过调整仿真参数(如扩张因子、步长、输入信号类型等),观察其对算法性能的动态影响,从而加深对理论分析结果的理解,并提升解决实际工程问题的能力。

34,876

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧