sql横排
A. sql怎么实现查询出的结果横排显示
因记录数不定,记录改成字段数量就不定,没有确定字段数,无法作查询。因为查询语句必须要字段列表的。
所以,你的问题不如这样实现,字段名就不要重复了,字段内容横过来就行了。
这样:
DECLARE @CD VARCHAR(8000)
SET @CD=''
SELECT @CD=' '+C+' '+D FROM 表A
select C_D=@CD
结果是这样
C_D
1 2 3 4 5 6
B. SQL 横排变竖排的问题
给例子远比你贴代码快,
SELECT name,
SUM(CASE subject WHEN '语文' THEN Result ELSE 0 END),
SUM(CASE subject WHEN '数学' THEN Result ELSE 0 END),
SUM(CASE subject WHEN '物理' THEN Result ELSE 0 END)
FROM tb
GROUP BY Name
C. sql查询横排
静态的,假设统计类别就只有:伙食费、培训费两种
select 姓名,
max(case 统计类别 when '培训费' then moneys else 0 end) 培训费,
max(case 统计类别 when '伙食费' then moneys else 0 end) 伙食费
from
(
select 姓名,sum(金额) moneys, 统计类别
from 表1
group by 姓名,统计类别
) tb
group by 姓名
----
动态的,统计类别不固定
declare @sql varchar(8000)
set @sql = 'select 姓名'
select @sql = @sql + ' , max(case 统计类别 when ''' + 统计类别 + ''' then moneys else 0 end) [' + 统计类别 + ']' from (select distinct 统计类别 from 表1) as a
set @sql = @sql + ' from (select 姓名,sum(金额) moneys, 统计类别 from 表1 group by 姓名,统计类别) group by 姓名'
exec(@sql)
D. SQL如何将查询结果横排显示
这只是一个合并语句就搞定了。
select floor,group_contact(roomid,"##") as roomid from tablename group by floor;
用二个##分隔如得到的结果是 1000##1001
如果直接用group_contact(roomid)则是以,号分隔 如1000,1001
输出时用字符串工具处理下就可以了。
E. 急急急!!! SQL语句如何将竖排的记录变横排并且放置在同一单元格内,跪求大神指点,万分感谢!!!
selectname姓名,col1+''+col2+''+col3参保类型
from(
selectname,'失业保险'ascol1,'医疗保险'ascol2,'工伤保险'ascol3fromtable1
pivot(max(type)fortypein([失业保险],[医疗保险],[工伤保险]))
aspvt)tab
lz试一下,有问题再追问。
F. SQL 单表查询按字段分类统计如何横排显示
嵌入写:即简单,又易懂
select name ,
case type when '白班' then '1' else '' end as dayjob ,
case type when '夜班' then '1' else '' end as nightjob
from work
把上面这句做为整体,嵌入到下面。
select a.name ,count(a.dayjob),count(a.nightjob) from
(
select name ,
case type when '白班' then '1' else '' end as dayjob ,
case type when '夜班' then '1' else '' end as nightjob
from work
) as a group by a.name
括号里面就是一个子查询,这样就可以达到你的要求。
G. PHP如何把sql数据库中两个字段的值横排显示在网页
<?$dbh = @mysql_connect("localhost:3306","root","9999");@mysql_select_db("ok", $dbh);$q = "SELECT * FROM abc";$rs = mysql_query($q, $dbh);while($row = mysql_fetch_array($rs)) echo "$row[id] $row[name] ";@mysql_close($dbh);?>