高人请进: 求一sql语句.

tonnyhe 2005-05-22 02:35:05
表1:

日期 时间 类型 数值
2005-1-1 0 H 20
2005-1-1 15 H 18
2005-1-1 100 H 12
2005-1-1 0 T 60
2005-1-1 15 T 61
2005-1-1 30 T 62

表2:

时间
0
15
30
45
100





求一sql语句得出如下结果.

日期 时间 类型 数值 类型 数值
2005-1-1 0 H 20 T 60
2005-1-1 15 H 18 T 61
2005-1-1 30 T 62
2005-1-1 45
2005-1-1 100 H 12




...全文
97 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
xluzhong 2005-05-22
  • 打赏
  • 举报
回复
create table a(日期 datetime,时间 int,类型 varchar(10),数值 int)
insert a(日期,时间,类型,数值)
values('2005-1-1',0,'H',20)
insert a(日期,时间,类型,数值)
values('2005-1-1',15,'H',18)
insert a(日期,时间,类型,数值)
values('2005-1-1',100,'H',12)
insert a(日期,时间,类型,数值)
values('2005-1-1',0,'T',60)
insert a(日期,时间,类型,数值)
values('2005-1-1',15,'T',61)
insert a(日期,时间,类型,数值)
values('2005-1-1',30,'T',62)

create table b(时间 int)
insert b(时间)
values(0)
insert b(时间)
values(15)
insert b(时间)
values(30)
insert b(时间)
values(45)
insert b(时间)
values(100)


DECLARE @SQL VARCHAR(8000)
SET @SQL='select distinct isnull(t2.时间,t1.时间) as 时间,t1.* from b t2 left join (select 日期,时间'
SELECT @SQL= @SQL+','''+类型+''' as 类型'+类型+',(select 数值 from a where 类型='''+类型+''' and 时间=t.时间 and 日期=t.日期) as 数值'+类型
from
(select distinct 类型 from a) b

set @sql=@sql+' from a t)t1 on t1.时间=t2.时间'
print @sql
exec(@sql)

drop table a,b
tjficcbw 2005-05-22
  • 打赏
  • 举报
回复
一个时间内如H的,有可能有二个数值吗?,如有如何处理。是相加吗?
点点星灯 2005-05-22
  • 打赏
  • 举报
回复

declare @a table(日期 datetime,时间 int,类型 varchar(10),数值 int)
insert @a(日期,时间,类型,数值)
values('2005-1-1',0,'H',20)
insert @a(日期,时间,类型,数值)
values('2005-1-1',15,'H',18)
insert @a(日期,时间,类型,数值)
values('2005-1-1',100,'H',12)
insert @a(日期,时间,类型,数值)
values('2005-1-1',0,'T',60)
insert @a(日期,时间,类型,数值)
values('2005-1-1',15,'T',61)
insert @a(日期,时间,类型,数值)
values('2005-1-1',30,'T',62)
--select * from @a

declare @b table(时间 int)
insert @b(时间)
values(0)
insert @b(时间)
values(15)
insert @b(时间)
values(30)
insert @b(时间)
values(45)
insert @b(时间)
values(100)

select a.日期,b.时间,a.类型,a.数值 from @a a,@b b where a.时间=b.时间


--楼主,你要的格式好难做啊,调了很久还没调出来,关注中
【状态估计】【扩展卡尔曼滤波算法的神经网络训练】BP神经网络、扩展卡尔曼滤波EKF+BP、粒子滤波PF轨迹估计研究(Matlab代码实现)内容概要:本文档围绕状态估计与神经网络训练展开,重点研究了扩展卡尔曼滤波(EKF)与BP神经网络相结合的方法,以及粒子滤波(PF)在轨迹估计中的应用。通过Matlab代码实现,展示了EKF+BP算法在非线性系统状态估计中的优势,提升了传统BP神经网络的收敛速度与估计精度,并对比分析了BP、EKF+BP和PF三种方法在轨迹估计任务中的性能表现。文档还提供了完整的仿真代码与实验案例,适用于复杂动态系统的建模与优化。; 适合人群:具备一定信号处理、控制理论及机器学习基础,从事自动化、电子信息、通信工程、导航与控制等领域研究的研究生或科研人员。; 使用场景及目标:①应用于非线性动态系统的状态估计与轨迹跟踪,如无人机、机器人导航等;②用于提升神经网络在时变系统中的训练效率与鲁棒性;③为科研工作者复现SCI高水平论文提供技术支持与代码参考。; 阅读建议:建议结合Matlab仿真实践,深入理解EKF与神经网络融合的设计思想,重点关注算法实现细节与参数调优策略,同时可拓展至其他滤波算法(如UKF)与深度学习模型的结合研究。

27,582

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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