【SQLServer】-如何实现定义变量,完成数据库的查询操作
2013-03-11 13:01
615 查看
--defined a variable declare @changzhanid varchar(10) declare @ertuid varchar(10) declare @taskid varchar(10) declare @meteraddress varchar(30) declare @tasktable varchar(12) declare @sql varchar(500) declare @starttime varchar(500) declare @endtime varchar(500) declare @dataitem varchar(500)
set @meteraddress='12010020' ------------Meter address set @starttime='2013-01-01 14:00:00' ------------Query Startime set @endtime='2013-04-29 14:30:00' ------------Query Endtime set @dataitem='acq_date,ACQ_10,ACQ_12,ACQ_13' ------------Query Dataitem
begin set @changzhanid=(select ertutask_record.changzhanid from ertutask_record inner join meter_record on ertutask_record.changzhanid=meter_record.changzhanid and ertutask_record.ertu_id=meter_record.ertuid where meter_record.meter_code=@meteraddress ) set @ertuid=(select ertutask_record.ertu_id from ertutask_record inner join meter_record on ertutask_record.changzhanid=meter_record.changzhanid and ertutask_record.ertu_id=meter_record.ertuid where meter_record.meter_code=@meteraddress) set @taskid=(select ertutask_record.task_no from ertutask_record inner join meter_record on ertutask_record.changzhanid=meter_record.changzhanid and ertutask_record.ertu_id=meter_record.ertuid where meter_record.meter_code=@meteraddress ) end set @tasktable='task_'+@changzhanid+'_'+@ertuid+'_'+@taskid set @sql='select meter_record.customerid,meter_code,meter_record.meter_name,'+@tasktable+'.'+@dataitem + ' from '+@tasktable +' inner join meter_record on '+@tasktable+'.changzhanid=meter_record.changzhanid and ' +@tasktable+'.ertuid=meter_record.ertuid where '+@tasktable+'.acq_date between ''' +@starttime+''' and ''' +@endtime+'''' exec (@sql)
1.在这个SQL中有几个重点,其中 就是将一个查询的table的名字作为一个变量
2.在查询的时候,需要加入时间,时间这个变量,需要加‘’如何在用字符相加的情况下,加入‘’号。
首先在我的文档中,我所查询的为task_1_2_3这样的表格,而1 ,2,3 这几个数字代表的意义不相同, 分别是declare @changzhanid varchar(10)
declare @ertuid varchar(10)
declare @taskid varchar(10)
这三个的代号,由于在变化,所以,将这些也写成变量。
为了能够查询到结果,可以简化的通过exec的方式写出。
而这三个值也不是通过自己赋值变量,而是从其他的表格中查询出来的。
相关文章推荐
- 如何用一张JSP页面连接数据库,实现查询、修改操作
- Sqlserver 在查询分析器里如何访问远程的的数据库,进行数据查询更新等操作。
- sqlserver中如何实现时间按月,日,小时分组查询
- (二)不同数据库间的交叉数据查询插入等操作实现
- delphi 对 access 数据库的操作如何完成?
- spring jdbctemplate 实现数据库的查询操作
- SqlServer 连接字串不使用数据库名 实现跨库查询
- 如何使用sql查询数据库表结构的设计(sqlserver,oracle)
- SQLServer如何用T—SQL命令查询一个数据库中有哪些表
- 如何解决查询数据库时出现“用户请求取消当前操作”
- 如何使用Node.js操作redis来完成添加查询功能的具体介绍
- 【转载】C# 中如何实现LINQ查询数据库表信息
- 如何优化操作大数据量数据库(几十万以上数据)(三。实现小数据量和海量数据的分页显示存储过程)
- 费劲心思完成了+ 点击查询之后实现页面不可操作,等待查询,几秒后返回结果页面
- 如何实现每天定时对数据库的操作
- 【Java】如何用Java实现数据库查询
- 3.如何优化操作大数据量数据库(实现小数据量和海量数据的分页显示存储过程)
- 如何实现将Excel表(含多张数据库表)导入数据库(SQLServer)
- 如何实现每天定时对数据库的操作
- 如何实现每天定时对数据库的操作