是否有任何方法可以將csv文件設置爲多個值並將這些值輸入到postgres select語句中。例如,如果我有叫text.csv與價值1,2,3,4,5,6 CSV文件......有沒有辦法對我進行選擇,例如:根據csv文件值進行選擇
select *
from table
where id in (test.csv);
是否有任何方法可以將csv文件設置爲多個值並將這些值輸入到postgres select語句中。例如,如果我有叫text.csv與價值1,2,3,4,5,6 CSV文件......有沒有辦法對我進行選擇,例如:根據csv文件值進行選擇
select *
from table
where id in (test.csv);
有一個fdw文件 - https://www.postgresql.org/docs/current/static/file-fdw.html - 允許您使用文件作爲表的外部數據包裝器。
這裏是例子 - http://www.postgresonline.com/journal/archives/250-File-FDW-Family-Part-1-file_fdw.html
嗯,這是它是如何做!
Select * from table where id in (
select id from openrowset('MSDASQL'
,'Driver={Microsoft Text Driver (*.txt; *.csv)}'
,'select * from c:\test.csv')
)
如果您的sql server未啓用Ad Hoc Distributed Queries,請先在sql下啓動。
sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
sp_configure 'Ad Hoc Distributed Queries', 1;
RECONFIGURE;
GO
祝你好運! Keyur
這是無效的SQL,對於Postgres也是無效的(問題中只有兩個標籤) –
道歉,但這是如何工作的? – EamonnMcElroy
請參閱示例 - (如上所述創建「外部服務器」之後),您將創建所謂的「外部表」,此表的行爲與select中的普通表一樣。但數據將從文件中獲取。 – JosMac