Java 中如何使用 SQL 查詢 TXT

xiaohuihui發表於2020-06-24

Java不能直接使用SQL查詢文字,一般常規做法:在資料庫建立臨時表,Java解析文字入庫,再使用SQL對其查詢、過濾、分組等。

但實現過程太麻煩了。主要不方便體現在:

1、Java程式碼寫起來很長,開發環境配置也複雜,一般對人員要求較高。

2、為了獲得SQL的便利性,安裝資料庫、建立臨時表,雖然不難,卻很繁瑣。

3、一些臨時性、突發性需求,搞起來週期長,甚至某些場景下不允許安裝資料庫,就很尷尬,全部用Java寫,難度大。

比如要處理這麼個場景:查詢1996-07-23後且單筆金額大於10000的訂單,部分源資料如下:

O_ORDERKEY       O_CUSTKEY        O_ORDERDATE        O_TOTALPRICE

10262   RATTC   1996-07-22       14487.0

10263   ERNSH   1996-07-23       43818.0

10264   FOLKO   2007-07-24       1101.0

10265   BLONP   1996-07-25       5528.0

10266   WARTH   1996-07-26       7719.0

10267   FRANK   1996-07-29       20858.0

10268   GROSR   1996-07-30       19887.0

10269   WHITC   1996-07-31       456.0

10270   WARTH   1996-08-01       13654.0

...

期望的結果:

Java 中如何使用 SQL 查詢 TXT

如果使用集算器 SPL 會簡單很多,它對檔案(txt、Excel等)直接提供了SQL式查詢與計算的能力,讓程式設計師享受絕對的便利,不再考慮這些煩心的事。比如上面問題,1行就搞定了:


A

1

$()select * from /workspace/orders.txt where O_ORDERDATE>=date('1996-07-23') and O_TOTALPRICE >10000

其實還有很多情況用Java計算文字、Excel不太方便,甚至關聯計算、入庫等需求,但用集算器SPL卻很簡單,感興趣可以參考:

集算器還很容易嵌入到Java應用程式中, 有使用和獲得它的方法。

關於集算器安裝使用、獲得免費授權和相關技術資料,可以參見 。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69900830/viewspace-2700411/,如需轉載,請註明出處,否則將追究法律責任。

相關文章