我有一个导入SQL的临时表,其列名如...
Field1, Field2, Field3, Field4, Field5, Field6
等等。
表中的一条记录包含实际的列名,例如......
fldBP, fldDialysis, fldMed, fldInventory, fldDoctors
我需要循环或创建一个基本查询,将每个列名更改为位于列中的列名和包含实名的记录。有一个简单的方法吗?列名称的记录始终是第一个。
答案 0 :(得分:0)
由于您已经拥有sql server中的所有数据,因此无需再次导入它,只需使用类似
的内容即可SELECT MAX(LEN(Field1)) Field1Len
,MAX(LEN(Field2)) Field2Len
,MAX(LEN(Field3)) Field3Len
FROM Table_Name
这将为您提供并大致了解每列需要的长度,使用您已拥有数据的表中的列名创建新表,然后删除该行,然后只需插入新表像这样的东西,,,
INSERT INTO New_Table (fldBP, fldDialysis, fldMed, fldInventory, fldDoctors,....)
SELECT Field1, Field2, Field3, Field4, Field5, Field6,......
FROM Table_Name
/*Finally Drop the stagging\Bad table*/
DROP TABLE Table_Name