CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  疑难问题

一个复杂的问题,请教大侠

楼主supper3000(水果阿生)2003-09-03 16:51:31 在 MS-SQL Server / 疑难问题 提问

跨表查询,跨3个表,  
  表一记录了,姓名.uid  
  表二记录了,uid,username(用来登陆)  
  表三记录了,username,其他  
  表四记录了,username,其他  
  要求显示表一的姓名,表三的其他,一一匹配,实际上肯定是匹配的,但是不是显示所有的表三姓名,要求显示表四中没有的,表三中有的姓名.我用如下语句实现.  
  select   姓名   from   sheet1$   where   人员编号   in(select   userid   from   quanxian   where   username   in(select   distinct   uid   from   answer   where   uid   not   in(select   uid   from   score)))  
  但是检索出来的结果不是顺序匹配的,显示answer的内容是按照从表三查询出来的顺序,而显示的姓名是从表一中顺序显示的姓名,所以不匹配.请教如何解决?  
   
  问题点数:20、回复次数:1Top

1 楼txlicenhe(马可)回复于 2003-09-03 18:27:29 得分 20

Select   a.姓名,c.其它   from   表一   a  
      join   表二   b   on   a.uid   =   b.uid  
      join   表三   c   on   b.username   =   c.username  
      where   c.username   not   in   (select   username   from   表四)  
      order   by   a.姓名  
  Top

相关问题

  • 复杂的sql
  • ~~~!!!复杂的SQL!!!~~~
  • 复杂问题!!!!1
  • 时间复杂度
  • 复杂度问题
  • 复杂的"约束"
  • 算法复杂度
  • 空间复杂度!
  • update 复杂问题
  • 做软件有多复杂?

关键词

  • 姓名
  • 表
  • uid
  • 匹配
  • 显示
  • 顺序
  • username
  • 记录了
  • where
  • select

得分解答快速导航

  • 帖主:supper3000
  • txlicenhe

相关链接

  • SQL Server类图书

广告也精彩

反馈

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