有没有办法使用sql使用第一行中的数据更改表的列名。我知道我可以手动完成,但我想知道我是否可以实用。
例如,表名COL 1将更改为Borough Block和Lot#
答案 0 :(得分:1)
SQL没有“第一行”的概念,因为表本质上是无序的。
您似乎在将数据导入数据库时遇到问题。看起来列名称是作为数据值而不是列名导入的。
这可能会导致多个问题。例如,col8
似乎是一个日期。但是,数据库中的数据类型是字符串。将日期存储为日期会更方便,因此order by
和>
(例如)可以对它们进行处理。
我建议您重新导入数据并学习如何从文件中读取列名。或者,导出数据,然后将其重新导入另一个表。
答案 1 :(得分:1)
对于30列,我强烈建议您手动命名。
我更喜欢这样命名的列:
facility_address
owner_name
owner_address
gas_provider
boiler_application_number
oil_phaseout_deadline
如果你以编程方式处理这个垃圾,那么你将获得垃圾。
同样如上所述,期间在列名中无效,因此您无论如何都必须将这些作为例外处理。
答案 2 :(得分:1)
选择'COL1'为COL1,'COL2'为COL2,'COL3'为COL3 FROM table
UNION
SELECT COL1,COL2,COL3 FROM table
但您需要先了解之前查询的字段名称
从表格中显示列