编程论坛
注册
登录
编程论坛
→
SQL Server论坛
【求助】SQL查询记录并且AS下列名
loplee
发布于 2012-02-08 13:49, 499 次点击
问题详细,表A和表B,需要把表A中的一条记录取出,并且做为列名显示出来,比如在DataGrid中。请大家帮忙,谢谢!
1 回复
#2
wangchatian
2012-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