本帖最后由 jeffluo 于 2016-8-30 09:40 编辑
【沒有安裝SQL Server下,硬要GROUP BY分析CSV檔案】 當然這不是要用去NOSQL取代SQL,是說在沒有SQL SERVER環境下,也可以下SQL陳述式。 古人說,窮則變變則通,這個【窮】是山窮水盡還是公司【窮】,沒錢買SQL Server(當然Express還是free),當然很多情況,就是不想要安裝SQL Server,就要使用SQL指令進行資料分析。 有個情況是這樣,如果有一些CSV檔案,完全不想要匯入的SQL SERVER狀況下,僅需要短暫的分析,並且也不想碰觸到太多的EXCEL或是複雜的軟體,跟怎樣辦? 答案也不難處理【使用LogParser】
可以參考一下這樣的做法。 【安裝微軟的 LogParser】
http://www.iyunv.com/thread-265053-1-1.html 【範例DATA.csv】
工作地點,區域
台北,台北市
板橋,新北市
高雄,高雄市
新莊,新北市 【開始以下的指令】 c:\Program Files (x86)\Log Parser 2.2>LogParser.exe "select TOP 3 * from C:\SQLBCK\DATA.csv"
Filename RowNumber 工作地點 區域
------------------ --------- ---- ---
C:\SQLBCK\DATA.csv 2 台北 台北市
C:\SQLBCK\DATA.csv 3 板橋 新北市
C:\SQLBCK\DATA.csv 4 高雄 高雄市 c:\Program Files (x86)\Log Parser 2.2>LogParser.exe "SELECT TOP 3 COUNT(*) AS TOTAL,ProductID
FROM C:\SQLBCK\ADW?.csv
GROUP BY productID ORDER BY TOTAL DESC"
-i:CSV c:\Program Files (x86)\Log Parser 2.2>LogParser.exe "select TOP 3 * INTO tblCSV from C:\SQLBCK\DATA.csv"
-i:CSV -o:SQL -server:(local)
-database:tempdb -createTable:on c:\Program Files (x86)\Log Parser 2.2>LogParser.exe "SELECT COUNT(*) AS TOTAL,ProductID INTO tblDATA
FROM C:\SQLBCK\ADW?.csv
GROUP BY productID
ORDER BY TOTAL DESC"
-i:CSV
-o:SQL -server:(local) -database:tempdb -createTable:on c:\Program Files (x86)\Log Parser 2.2>
【查詢CSV檔案結果】
|