用于读取特定图纸,列的sql命令
这可能是SQL stalwarts的一个非常愚蠢的问题,但我只想要一个SQL命令。
细节,
我正在使用一个名为R的数据分析工具,这个工具使用ODBC从XLS读取数据。 我现在正在尝试从XLS文件读取数据。 R中的ODBC工具接受SQL命令。
题,
有人可以给我一个SQL命令,将读取XLS文件的数据 – 指定表 – 指定的列[按名称] – 指定的行[仅由行索引指定]
谢谢 …
一旦你设置了连接到文件,你可以使用下面的语句:
select [columnname] from [sheetname$] where [columnname] = 'somevalue'
不知道行索引的事情。 但是,如果文件中的每一行都有序列号或任何这样的唯一值,则可以使用where子句。
在下面的查询中,您可以读取图A中第61行的数据,&G应该读取所有列直到G.
SELECT * FROM [Sheet1$a61:G]
以下是一个示例查询:
SELECT [sheet1$.col1], [sheet1$.col2], [sheet2$.col1] FROM [sheet1$], [sheet2$] WHERE [sheet1$.col1] = [sheet2$.col2]
这假设一个Excel表格2张( sheet1
和sheet2
)。 每张纸有2列,第一行作为标题(每张纸上的col1
和col2
)。
以下是完整的代码:
> library(RODBC) > conn <- odbcConnectExcel('c:/tmp/foo.xls') > query <- "select [sheet1$.col1], [sheet1$.col2], [sheet2$.col1] from [sheet1$], [sheet2$] where [sheet1$.col1] = [sheet2$.col2];" > result <- sqlQuery(conn, query) > odbcClose(conn) > result col1 col2 col1.1 1 1 3 5 2 2 4 6 3 3 5 7
我从来没有find办法处理行号。 我只是创build一个额外的列,并顺序填写。 不知道这是否适合你。