当前位置:首页 » 编程语言 » sql怎么分为两列
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql怎么分为两列

发布时间: 2023-05-21 14:14:13

❶ 怎样将sql查出的字段分成两列解决办法

select substr(字段名称,1,x),substr(字段名称,x+1) from 表名;
其中X代表你要截取的该字段要设置为第一列的长度。
例如:
select substr(empno,1,2)第一列,substr(empno,3)第二列 from emp;
这样查询出来显示的就把 empno 字段分为了2列。

❷ sql查询中,如何将某列 分成 两列。

SELECT PAccM33g02,

CASE PAccM33g02

WHEN 0 THEN PAccM33g02 END PAccM33g02_J,

CASE PAccM33g02

WHEN 1 THEN PAccM33g02 END PAccM33g02_C

FROM PAccM3307

❸ sql中如何把查出的两行变为两列

行转列问题,键游已搭亮陆学生,课程,成绩 表为例
表student(name,course,score)
declare @sql varchar(8000)
begin
set @sql = 'select name as 姓名'
select @sql = @sql + ',SUM(case when course='知顷'' + [course] + ''' then score end) as '+ course + ''
from Student group by name

set @sql = @sql + ',sum(score) as 总分 from student group by name'
end
exec(@sql)

❹ sql如何将一张表中的一列数据分为两列显示

目前找到一个办法。

select id,max(money),sum(money)-max(money)
from tt
group by id

❺ 各位老师:如何在sql中把下列字符串里的内容把表里面的内容按照“:”分成两列。

假设你滑贺的表名为test_table,列名为 key_value,现在要以冒号分敬脊割' : '

select SUBSTRING_INDEX(key_value,"亮让渗:",1) as key, SUBSTRING_INDEX(key_value,":",-1) as value from test_table

❻ 关于mysql数据库将一列分成两列的方法

可用substring函数。

如某个表中只有一个字段:

ID

123abc

456def

890ghi


现在要将前三位为一个字液宽段,起名为id1,后3位是另一个字段,起名叫id2。可用如下语句:

selectsubstring(id,1,3)id1,substring(id,4,3)id2from表名

结果如下:

id1 id2

123 abd

456 def

890 ghi


substring函数说明,一共需要3个参数,其中,第一个参数为要截取的字符串,第二个磨掘参数为截取的起始位置,第三个参数为截取瞎埋核的长度。

❼ sql,2005里,如何将查询的结果分两列显示.

这个比较简单吧
先做一个子查询,把你需要的数据查出来,另外再新加一个字段,比如想第一列显示的固定为1,第二列的固定为2
然后在外面再套一层,case when xx=1 then 查询出来的字段 else '' end as 第一列
同样的方法就得到第二列了。
最后,再根据你想要的键值 group by 一下

❽ sql,2005里,如何将查询的结果分两列显示.

这个比较简单吧
先做一个子查询,把你需要的数据查出来,另外再新加一个字段,比如想第一列显示的固定为1,第二列的固定为2
然后在外面再套一层,case
when
xx=1
then
查询出来的字段
else
''
end
as
第一列
同样的方法就得到第二列了。
最后,再根据你想要的键值
group
by
一下

❾ SQL语句拆分表中内容,并变成两列

USEtempdb
GO
ALTERFUNCTIONDBO.SPLT
(@COLNVARCHAR(200),
@PRANVARCHAR(10)
)
RETURNSNVARCHAR(100)
AS

BEGIN
DECLARE@NUMNVARCHAR(100),@STRNVARCHAR(100),@IINT
SET@NUM=''
SET@STR=''
SET@I=1

WHILE(@I<=LEN(ISNULL(@COL,'')))
BEGIN
IFSUBSTRING(@COL,@I,1)IN('0','1','2','3','4','5','6','7','8','9')--说明是数字
SET@NUM=@NUM+SUBSTRING(@COL,@I,1)
ELSE
SET@STR=@STR+SUBSTRING(@COL,@I,1)
SET@I=@I+1

END
IF@PRA='STR'
SET@NUM=@STR
RETURN@NUM
END
GO
SELECTdbo.SPLT('A123,B23,BD21','STR'),dbo.SPLT('A123,B23,BD21','')

❿ 悬赏,请教sql高手一个问题,高手进,如何把以下的一列数据转换成两列

--创建函数
createFUNCTIONdbo.Ufn_StringSplit
(@sasvarchar(2000))RETURNSint
AS
BEGIN
declare@rasint,@CHARINDEXasint
set@r=0
declare@ias消毁int
set@i=0
while@i<10
begin
set@CHARINDEX=CHARINDEX(cast(@iasvarchar(1)),@s)
if@CHARINDEX<>0
begin
if@CHARINDEX<@ror@r=0
set@r=@CHARINDEX
end
set@i=@i+1
end
return@r
END
GO
--创建测试数据
select*into#from(
select'0101010001'a,nullb,'0101010001'cunionall
select'IPY88866038','IPY','88866038'unionall
select'IPY-HCAA200038401','IPY-HCAA','200038401'unionall
select'DAA05007220600T','DAA','05007220600')aa
--执行查询
select
a
,casewhenposition=1thennullelseleft(a,position-1)局坦endas转换列1
,right(a,len(a)-position+1)as转换后桐桥桐列2
from
(selecta,dbo.Ufn_StringSplit(a)aspositionfrom#)asabcd
--删除临时数据
droptable#
dropFUNCTIONdbo.Ufn_StringSplit

在SQL2014中测试通过

如图: