CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

好麻烦,这个语句是关联两个表取数据,如果有匹配就显示原始数据,没有就为0,怎么弄呢?

楼主suandetian()2005-04-03 13:01:56 在 MS-SQL Server / 基础类 提问

 
  销售表:     details  
     
  create   table   details(productid   int,orderdate   datetime,quantity   int)  
  insert   into   (1,'2005-3-2   14:00:00',20)  
  insert   into   (1,'2005-3-2   15:00:00',null)  
  insert   into   (1,'2005-3-2   15:40:00',15)  
  insert   into   (1,'2005-3-3   6:00:00',20)  
  insert   into   (2,'2005-3-2   15:30:00',null)  
  insert   into   (3,'2005-3-2   14:00:00',22)  
   
  日期表:     #temp  
     
  create   table   #temp(dates   datetime)  
  insert   into   #temp   values   ('2005-3-2   11:00:00')  
  insert   into   #temp   values   ('2005-3-2   14:00:00')  
  insert   into   #temp   values   ('2005-3-2   17:00:00')  
   
   
  现在就是要找出details表中的日期与#temp表的日期相匹配的记录(日期以#temp表为准,#temp表如果有三个日期,就要取三条记录)  
  如果匹配就取出这条记录,如果不匹配就把quantity设为0  
   
  要取的结果如下:  
   
  如果选择的productid=1  
   
  1,'2005-3-2   11:00:00',0  
  1,'2005-3-2   14:00:00',20  
  1,'2005-3-2   17:00:00',0  
   
   
  如果选择的productid=2  
   
  2,'2005-3-2   11:00:00',0  
  2,'2005-3-2   14:00:00',0  
  2,'2005-3-2   17:00:00',0  
   
  如果选择的productid=3  
   
  3,'2005-3-2   11:00:00',0  
  3,'2005-3-2   14:00:00',22  
  3,'2005-3-2   17:00:00',0  
  问题点数:80、回复次数:2Top

1 楼Mrzhang666()回复于 2005-04-03 14:34:39 得分 40

select   a.datetime,b.productid,isnull(b.quantity,0)   from     #temp   a   left   join   details   b   on   a.datetime=b.datetime  
  order   by    
  b.productidTop

2 楼wqhj2000(阿杰)回复于 2005-04-03 15:06:38 得分 40

DECLARE   @prdt_id   int  
  set   @prdt_id=1  
  SELECT    
  isnull(details.productid,@prdt_id),  
  #temp.dates,  
  isnull(details.quantity,0)  
  FROM   details  
  right   join   #temp  
  on   details.orderdate=#temp.dates  
  Top

相关问题

  • 关联表语句问题。
  • 表关联的sql语句(急!)
  • 表关联sql语句问题,谢谢
  • 多表关联查询语句
  • 好麻烦,这个语句是关联两个表取数据,如果有匹配就显示原始数据,没有就为0,怎么弄呢?
  • 关于表关联时SQL语句的关联条件
  • 查找两个表中不匹配的SQL语句
  • ASP.NET中SQL语句用关联的为什么DATASET会提示类型不匹配的错误
  • 关联表的语句错误,帮忙看一下啊
  • 关于外表关联查询语句的问题?

关键词

  • 选择
  • 匹配
  • 表
  • 日期
  • insert
  • 记录
  • temp
  • details
  • 选择的productid

得分解答快速导航

  • 帖主:suandetian
  • Mrzhang666
  • wqhj2000

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo