CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

SQL大联合

楼主UGVUYVYV()2006-03-13 22:51:12 在 .NET技术 / ASP.NET 提问

sql   =   "select   TimeLapse.*,PlaceID=Place.PlaceID   and   ";  
  sql   +="PlaceType.Name   AS   Type   From   TimeLapse,Place,PlaceType   ";  
  sql   +="where   TimeLapse.PlaceID   =   Place.PlaceID   and   ";  
  sql   +="Place.TypeID=PlaceType.TypeID   ";  
  sql   +="and   TimeLapse.UserID   =   '"   +   Context.User.Identity.Name   +   "'";  
   
  这段SQL联合起来是什么意思啊 问题点数:100、回复次数:8Top

1 楼singlepine(小山)回复于 2006-03-13 22:59:33 得分 20

假设Context.User.Identity.Name="aaa";  
   
  select    
  TimeLapse.*,  
  PlaceID=Place.PlaceID   ,    
  PlaceType.Name   AS   Type  
  From   TimeLapse,Place,PlaceType    
  where    
  TimeLapse.PlaceID   =   Place.PlaceID    
  and   Place.TypeID=PlaceType.TypeID    
  and   TimeLapse.UserID   =   'aaa'  
  从TimeLapse,Place,PlaceType   三个表中查询数据  
   
  没什么特别,你原来的sql有问题,查询字段中是不能有and的Top

2 楼wbj02(J^情之弦^J)回复于 2006-03-13 23:32:09 得分 10

SQL语句有错。  
  sql   =   "select   TimeLapse.*,PlaceID=Place.PlaceID   and   ";  
  中是不可以有and的。  
  应该是:  
  sql   =   "select   TimeLapse.*,PlaceID=Place.PlaceID,";  
  sql   +="PlaceType.Name   AS   Type   From   TimeLapse,Place,PlaceType   ";  
  sql   +="where   TimeLapse.PlaceID   =   Place.PlaceID   and   ";  
  sql   +="Place.TypeID=PlaceType.TypeID   ";  
  sql   +="and   TimeLapse.UserID   =   '"   +   Context.User.Identity.Name   +   "'";  
   
  等同于:  
   
  sql   =   "select   TimeLapse.*,PlaceID=Place.PlaceID,PlaceType.Name   AS   Type   From   TimeLapse,Place,PlaceType   where   TimeLapse.PlaceID   =   Place.PlaceID   and   Place.TypeID=PlaceType.TypeID   and   TimeLapse.UserID   =   '"   +   Context.User.Identity.Name   +   "'";Top

3 楼Snowdust(雪尘)回复于 2006-03-14 08:55:05 得分 10

sql   =   "select   TimeLapse.*,PlaceID=Place.PlaceID   ";  
  sql   +="PlaceType.Name   AS   Type   From   TimeLapse,Place,PlaceType   ";  
  sql   +="where   TimeLapse.PlaceID   =   Place.PlaceID   and   ";  
  sql   +="Place.TypeID=PlaceType.TypeID   ";  
  sql   +="and   TimeLapse.UserID   =   '"   +   Context.User.Identity.Name   +   "'";Top

4 楼kokubo_wing(假装父母富裕是违法行为)回复于 2006-03-14 09:22:42 得分 10

就是一个级联查询语句分开写的啊,在SQL   SERVER用视图做一个实验你就能完全明白这句话是什么意思了.Top

5 楼luojianfeng(原来我不傻!)回复于 2006-03-14 09:28:22 得分 10

联合查询罢了Top

6 楼qingxiang_1024(清翔)回复于 2006-03-14 09:40:33 得分 20

sql   语句   中from   前面不能有and    
  其实这个语句就是   最简单的查询,找出三个表等值连接后符合条件的记录Top

7 楼seasky2008(老实的猪)回复于 2006-03-14 09:41:23 得分 10

等同于:  
  select   TimeLapse.*,PlaceID=Place.PlaceID,PlaceType.Name   AS   Type   From   TimeLapse,Place,PlaceType    
  where    
  TimeLapse.PlaceID   =   Place.PlaceID    
  and    
  Place.TypeID=PlaceType.TypeID    
  and  
  TimeLapse.UserID   =123    
   
  只是一个联合语句罢了,很简单的  
  同意wbj02(J^情之弦^J)   的观点,这个sql语句应该有错误吧,前面不能有and的,应该用“,”来代替:)Top

8 楼naturalth(自我批判,是思想、品德、素质、技能创新的优良工具)回复于 2006-03-14 09:47:29 得分 10

同意楼上的,麻烦你写个debug把这个sql输出来在查询分析你自己调试Top

相关问题

  • sql联合查询问题
  • oracle sql 的联合语法是怎样?
  • 关于联合的SQL语句
  • 关于联合的SQL更新语句
  • 求教:联合查询的SQL语句
  • 联合查询, 求一SQL 语句 .
  • 联合主键的sql语句写法
  • 简单的sql问题,关于两个表联合查询的,大家帮我看看,急!!!
  • VC程序员大联合
  • 用SQL进行多表联合查询的问题

关键词

  • sql
  • 查询
  • placeid
  • timelapse
  • placetype
  • place
  • typeid
  • identity
  • userid
  • context

得分解答快速导航

  • 帖主:UGVUYVYV
  • singlepine
  • wbj02
  • Snowdust
  • kokubo_wing
  • luojianfeng
  • qingxiang_1024
  • seasky2008
  • naturalth

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

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