注册 登录
编程论坛 SQL Server论坛

【求助】SQL查询记录并且AS下列名

loplee 发布于 2012-02-08 13:49, 499 次点击
问题详细,表A和表B,需要把表A中的一条记录取出,并且做为列名显示出来,比如在DataGrid中。请大家帮忙,谢谢!
1 回复
#2
wangchatian2012-02-14 16:18
   应该先补充你提的问题 :从表A 中取出的记录应该是维一的,否则是无法 AS 列名的。 只有这样才能够实现将行值转换为列。

   举一个教材中的例题吧:查找 A表 中 1990 年 1月 1日 的学生的姓名,并列出是否属于通讯工程专业的学生。把结果作为B表;
一、 sql 语句:

s:=select 姓名, 通讯工程  From A表 Pivot( count(学号) for  专业 in(通讯工程) ) AS pvt  Where 出生时间 < '1990-01-01'

二、
   begin
   with adoquery1 do
   begin
   close;
   sql.text:=s;
   open;
   end;
   end;
三、 建一个窗体,放上 dbgrid, adoquery1  datasouec 等。正确连接。
  

[ 本帖最后由 wangchatian 于 2012-2-14 16:30 编辑 ]
1