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

请问这条SQL语句怎么写?

楼主netrobo(netrobo)2003-02-04 14:53:56 在 Delphi / 数据库相关 提问

A表中有两字段同时关联B表中的一个字段,例如:  
  A表有:编号\姓名\人员原类别编号\异动后类别编号   四个字段  
  B表有:类别编号\类别名称   两个字段  
  我现在想用一条SQL语句产生一个记录集,也就是结构类别于A表,将类别编号换为类别名称.  
  不知该怎么写?  
  问题点数:100、回复次数:9Top

1 楼ma007(machao)回复于 2003-02-04 15:20:31 得分 5

selsect   b.类别名称,a.姓名,a.人员原类别编号,a.异动后类别编号    
  from   a,b   where   a.编号=b.类别编号Top

2 楼netrobo(netrobo)回复于 2003-02-04 15:31:16 得分 0

对不起,我可能没有说清楚.是A表的人员原类别编号和异动后类别编号关联B表的类别编号.  
  例如A表有如下数据:  
  人员编号       姓名         人员原类别编号       异动后类别编号  
  00000001     王老五                     1                                   2  
  00000002     李小三                     1                                   3  
  00000003     赵大老                     2                                   4  
  ……  
  B表有如下数据  
  类别编号     类别名称  
          1                 在职  
          2                 退休  
          3                 死亡  
          4                 调出  
  SQL语句执行后的结果:  
  人员编号       姓名         人员原类别名称       异动后类别名称  
  00000001     王老五                     在职                         退休  
  00000002     李小三                     在职                         死亡  
  00000003     赵大老                     退休                         调出  
   
   
  Top

3 楼guanghui(不归路)回复于 2003-02-04 16:24:59 得分 35

selsect   a.人员编号,a.姓名   b.类别名称   as   人员原类别名称       c.类别名称   as   异动后类别名称  
  from   a   as   a,b   as   b,b   as   c.  
  where     a.人员原类别编号=b.类别编号   and   a.异动后类别编号=c.类别编号    
  Top

4 楼sunware()回复于 2003-02-04 17:06:08 得分 5

呵呵呵!这个你参考一下以前“DBGrid的问题"吧。Top

5 楼gzllich(刚从泥坑里出来)回复于 2003-02-07 13:18:44 得分 5

select   a.编号,a.姓名,原类别   =   b.类别名称,   异动后类别   =   b.类别名称  
  from   a,   b  
  where   a.人员原类别编号   *=   b.类别编号  
  a.异动后类别编号*=   b.类别编号  
  (以sqlserver为例)Top

6 楼gzllich(刚从泥坑里出来)回复于 2003-02-07 13:21:12 得分 10

不好意思,错了,应该是:  
  select   a.编号,a.姓名,原类别   =   b1.类别名称,   异动后类别   =   b2.类别名称  
  from   a,   b   b1,   b   b2  
  where   a.人员原类别编号   *=   b1.类别编号  
  a.异动后类别编号*=   b2.类别编号  
  (以sqlserver为例)Top

7 楼LeonLin(不抓老鼠的猫)回复于 2003-02-07 13:48:07 得分 25

在下提供一笨辦法,以供各位dx討論!  
  select   stu.s_no   as   編號,stu.s_name   as   姓名,  
  (select   type.type_name   from   type   where   stu.log_no1=type.type_no)   as   類別1,  
  (select   type.type_name   from   type   where   stu.log_no2=type.type_no)   as   類別1  
  from   stu  
   
  本人試過其可用性,但速度未測,請各位DX指教Top

8 楼wangzn1979(梦郎2003)回复于 2003-02-07 22:18:44 得分 10

sql语句你也问,  
  这个应该是你自己掌握的!  
   
  不会的,自己多琢磨琢磨,提高很快的!  
   
  希望你能进步Top

9 楼mengxianbao1521(彪汉的人生,不需要解释!)回复于 2003-02-15 16:01:37 得分 5

left   JionTop

相关问题

  • sql语句怎么写?
  • sql语句怎么写
  • SQL语句怎么写啊~~
  • sql语句怎么写?
  • sql语句怎么写
  • SQL语句怎么写
  • SQL语句怎么写呀
  • sql语句怎么写
  • 怎么写SQL语句
  • 写SQL语句???

关键词

  • 语句
  • 字段
  • sql
  • 类别
  • 异动
  • 编号
  • 名称
  • 人员原
  • 姓名
  • stu

得分解答快速导航

  • 帖主:netrobo
  • ma007
  • guanghui
  • sunware
  • gzllich
  • gzllich
  • LeonLin
  • wangzn1979
  • mengxianbao1521

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

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