首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

sql相关语句

2012-12-25 
请教大家sql相关语句本人sql菜鸟,但是由于项目需要,望大家帮忙。表userprofile中有userid,moterid,sub等属

请教大家sql相关语句
    本人sql菜鸟,但是由于项目需要,望大家帮忙。
    表userprofile中有userid,moterid,sub等属性,表userdayengy中有userid,moterid,energy,startdate,enddate等属性,现在通过给sub信息,在userprofile中通过sub返回userid和moterid(当然有很多对啦),然后通过每一对userid和moterid,以及给予的startdate或enddate在userdayengy中返回energy。 得到用户需要的电量信息。
     基本信息是这些,我是想到用游标,但具体如何操作不太会.......
[最优解释]
select energy
from userdayengy as a 
where exists(select 1 from userprofile as b where b.userid=a.userid and b.moterid=a.moterid and b.sub='XXX') and (startdate='xxxx-xx-xx' or enddate='xxxx-xx-xx')
[其他解释]


--表userprofile中有userid,moterid,sub等属性
--表userdayengy中有userid,moterid,energy,startdate,enddate等属性
--现在通过给sub信息,在userprofile中通过sub返回userid和moterid
--然后通过每一对userid和moterid,以及给予的startdate或enddate
--在userdayengy中返回energy。

--定义参数
declare @sub varchar(40)
declare @startdate datetime,@enddate datetime
--参数赋值(略)

--关于两个时间的参数是用between还是用什么判断自行修改即可。
select 
b.energy 
from userprofile a join userdayengy b 
on a.userid=b.userid and a.moterid=b.moterid
where a.sub=@sub 
and b.startdate=@startdate
and b.enddate=@enddate

热点排行