各位朋友,小弟的的表分别有两个字段,其中一个字段存储客户的英文名,另外一个字段存储客户的中文名,自己的SELECT语句如下,但为什么不能达到预期的效果的呢?请赐教,谢谢!SELECT left(clientcode+REPLICATE(' ', L1-LEN(clientcode)),L1)+'|'+
left(clientname+REPLICATE(' ', L2-LEN(clientname)),L2) aa
FROM client,(SELECT MAX(LEN(convert(nvarchar(60),clientcode))) AS L1,MAX(LEN(convert(nvarchar(60),clientname))) AS L2 FROM client ) T where clientname is not null
查询分析器SELECT出来的结果:TIEN |天河
TOPE |創地
STAR |TRIAR
NDA |VAN
E(BD)LTD |WEL(BD)LTD
永升 |永地
長中 |長国
南梦 |南是
桐三亞 |桐三亞
自己最终想要的效果:(每一条记录都是非常整齐的对齐)
TIEN |天河
TOPE |創地
STAR |TRIAR
NDA |VAN
E(BD)LTD |WEL(BD)LTD
永升 |永地
長中 |長国
南梦 |南是
桐三亞 |桐三亞
left(clientname+REPLICATE(' ', L2-LEN(clientname)),L2) aa
FROM client,(SELECT MAX(LEN(convert(nvarchar(60),clientcode))) AS L1,MAX(LEN(convert(nvarchar(60),clientname))) AS L2 FROM client ) T where clientname is not null
查询分析器SELECT出来的结果:TIEN |天河
TOPE |創地
STAR |TRIAR
NDA |VAN
E(BD)LTD |WEL(BD)LTD
永升 |永地
長中 |長国
南梦 |南是
桐三亞 |桐三亞
自己最终想要的效果:(每一条记录都是非常整齐的对齐)
TIEN |天河
TOPE |創地
STAR |TRIAR
NDA |VAN
E(BD)LTD |WEL(BD)LTD
永升 |永地
長中 |長国
南梦 |南是
桐三亞 |桐三亞
if object_id('[tb]') is not null drop table [tb]
go
create table [tb]([col1] varchar(8),[col2] varchar(10))
insert [tb]
select 'TIEN','天河' union all
select 'TOPE','創地' union all
select 'STAR','TRIAR' union all
select 'NDA','VAN' union all
select 'E(BD)LTD','WEL(BD)LTD' union all
select '永升','永地' union all
select '長中','長国' union all
select '南梦','南是' union all
select '桐三亞','桐三亞'
---查询
select
result=cast(col1 as char(10))+'|'+cast(col2 as char(10))
from tb/**
result
---------------------
TIEN |天河
TOPE |創地
STAR |TRIAR
NDA |VAN
E(BD)LTD |WEL(BD)LTD
永升 |永地
長中 |長国
南梦 |南是
桐三亞 |桐三亞 (9 行受影响)
**/
就楼主的结果举个例子,楼主根据需要自己修改SQL code
if object_id('[tb]') is not null drop table [tb]
go
create table [tb]([col1] varchar(8),[col2] varchar(10))
insert [tb]
select 'TIEN','天河' union all
select 'TOP……
left(clientname+REPLICATE(' ', L2-LEN(clientname)),L2) aa
FROM client,(SELECT MAX(LEN(convert(nvarchar(60),clientcode))) AS L1,MAX(LEN(convert(nvarchar(60),clientname))) AS L2 FROM client ) T where clientname is not null
最终结果是
TIEN(6-4个空格)|天河
NDA (6-3个空格)|VAN 6是自己定的 可以自己设置 ,写成存储过程就比较方便定义了
char是定长,设定多少就占多少位