TextQL:在CSV和TSV上運(yùn)行SQL命令

enter image description here
enter image description here

封面人物:埃德加·弗蘭克·科德(Edgar Frank Codd,1923-2003)

密執(zhí)安大學(xué)哲學(xué)博士,IBM公司研究員,被譽(yù)為“關(guān)系數(shù)據(jù)庫(kù)之父”,并因?yàn)樵跀?shù)據(jù)庫(kù)管理系統(tǒng)的理論和實(shí)踐方面的杰出貢獻(xiàn)于1981年獲圖靈獎(jiǎng)。1970 年,科德發(fā)表題為“大型共享數(shù)據(jù)庫(kù)的關(guān)系模型”的論文,文中首次提出了數(shù)據(jù)庫(kù)的關(guān)系模型。由于關(guān)系模型簡(jiǎn)單明了、具有堅(jiān)實(shí)的數(shù)學(xué)理論基礎(chǔ),所以一經(jīng)推出就 受到了學(xué)術(shù)界和產(chǎn)業(yè)界的高度重視和廣泛響應(yīng),并很快成為數(shù)據(jù)庫(kù)市場(chǎng)的主流。20世紀(jì)80年代以來(lái),計(jì)算機(jī)廠商推出的數(shù)據(jù)庫(kù)管理系統(tǒng)幾乎都支持關(guān)系模型,數(shù)據(jù)庫(kù)領(lǐng)域當(dāng)前的研究工作大都以關(guān)系模型為基礎(chǔ)。

事實(shí)上,世界上幾乎所有的企業(yè)都在使用某種容量的關(guān)系數(shù)據(jù)庫(kù)。自從Codd公布其理論以來(lái)的30年中,關(guān)系數(shù)據(jù)庫(kù)已經(jīng)成為一個(gè)年收入近130億美元的行業(yè)。


推薦指數(shù):★★★★

使用難度:☆

適用范圍:對(duì)CSV或者TSV格式數(shù)據(jù)進(jìn)行查詢

GitHub數(shù)據(jù)

enter image description here
enter image description here


最近有不少朋友反應(yīng),前端的庫(kù)介紹的太多了,那么這次就來(lái)個(gè)非前端的。

CSV或者TSV格式的數(shù)據(jù)可能大家平時(shí)開(kāi)發(fā)中遇到的不多。但是在公司當(dāng)中或者科研當(dāng)中還是比較常見(jiàn)的。這種格式的數(shù)據(jù)一般是無(wú)法直接進(jìn)行查詢的,需要導(dǎo)入到數(shù)據(jù)庫(kù)中。不過(guò)使用TextQL就可以直接在CSV或者TSV格式的數(shù)據(jù)上進(jìn)行查詢了,非常方便。


一段代碼教程

$ textql -source ~/data.csv -sql "select count(*) from tbl"

直接在命令行運(yùn)行。

這條命令指定了使用的文件data.csv以及要運(yùn)行的sql語(yǔ)句,會(huì)返回運(yùn)行結(jié)果。

需要注意,tbl是默認(rèn)的表名,由于CSV和TSV文件是不包含表名的,所以需要有一個(gè)默認(rèn)的表名來(lái)運(yùn)行sql命令。


TextQL項(xiàng)目首頁(yè)


GitHub Tips

這次介紹一個(gè)非常簡(jiǎn)單但是非常實(shí)用的命令——git status。

這條命令非常簡(jiǎn)單,就是列出當(dāng)前庫(kù)的所有文件狀態(tài),我們看一個(gè)典型的輸出:

[root@localhost gender]# git status
# On branch master
# Your branch is ahead of 'origin/master'by 1 commit.
#
# Changed but not updated:
#  (use "git add <file>..." to update what will becommitted)
#  (use "git checkout -- <file>..." to discard changes inworking directory)
#
#       modified:   server.c
#
no changes added to commit (use "gitadd" and/or "git commit -a")

可以看到當(dāng)前的分支是master,有一個(gè)文件被修改但是沒(méi)有更新。

如果要更新修改的話,運(yùn)行“git add .”就可以了。

還記得我們上次說(shuō)的index嗎?這個(gè)東西相當(dāng)于git的一個(gè)緩存,里面記錄的就是當(dāng)前庫(kù)的所有文件狀態(tài)。我們運(yùn)行“git status”的時(shí)候,實(shí)際上git是把index里的內(nèi)容和上一次commit的狀態(tài)進(jìn)行比較得出的不同。

簡(jiǎn)單來(lái)說(shuō),git status顯示的就是從你上次更新版本之后產(chǎn)生的變更。


大家有覺(jué)得不錯(cuò)的庫(kù)一定要推薦給我哦~

歡迎掃描二維碼關(guān)注我的微信號(hào)“GitHub不完全裝B指南”,獲取最新文章。

謝謝~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容