0

我想将 2 列合并为一列并对齐第 2 列。

示例(我想将公司 ID 和名称组合为 1 列),

coid               coname

co1                company 1

comp2              company 2

companyid3         company 3

如果我只是从 mytable 中选择 coid + ' ' + coname,那么它给我的结果是,

co1   company 1

comp2   company 2

companyid3   company 3

我想对齐第 2 列(即 coname to like ),

co1                company 1

comp2              company 2

companyid3         company 3

我的代码,(我正在尝试以下代码)-但仍未对齐

我正在尝试获取 coid 的最大长度,然后相应地添加。在上面例如只在第 3 条记录中添加 5 个空格,在第 2 条记录中添加 10 个空格,在第 1 条中添加 12 个空格。但仍然没有用可能是因为单个字符的宽度。任何人都有任何想法这样做。

Dim mySql As String = "declare @len1 int " & Chr(10)
mySql = mySql & "select @len1 =  max(len(coid)) from mytable" & Chr(10)
mySql = mySql & "select coid, coid + space(@len1-len(coyid)+5) + coname as coname from mytable order by coid" & Chr(10)
Dim sqladp As New SqlClient.SqlDataAdapter(mySql, _SqlCon.sqlCon)

我想在组合框中显示这个。用户应从列表中选择公司。

4

2 回答 2

0

你可以试试这个。。

create table #t (compid varchar(10),name varchar(20))
go
insert into #t (compid ,name) 
SELECT 'Col1','Company ID -1'
union all
SELECT 'ID2','Compa -1'
union all
SELECT 'Comp3','Com ID -1'
union all
SELECT '4','Company-1'
go
select convert(char(10),compid) + SPACE(10) + convert(char(20),name) from #t
go
drop table #t
于 2012-07-04T05:06:42.443 回答
0

虽然我还没有看到任何看起来像这样的组合框,但
找到 conid 的最大长度并在所有字段中用 ' ' 填充,然后附加 coname ..

我想更好的格式是显示公司名称并在括号中显示 conid..

公司 1 (co1)
公司 2 (c02)

于 2012-07-04T02:53:13.343 回答