使用bash管道而不是select语句

时间:2013-12-08 19:18:48

标签: sql linux bash shell

我想知道是否可以在tab seperated value(tsv) - file上使用bash管道而不是select语句

我的tsv文件具有以下结构:

CREATE TABLE movies (title VARCHAR, full_name VARCHAR, type VARCHAR, ep_num VARCHAR, suspended BOOLEAN, year INT);

如果我想要检索:

How many movies were produced in 2013?

我会在sql中说:SELECT COUNT(*) FROM movies WHERE year='2013';

但是,我怎么说管道bash(使用catgrepwc)?这甚至可能吗?

我非常感谢你的回答!

1 个答案:

答案 0 :(得分:1)

您可以使用例如

awk '$(NF)==2013' input.tsv

这将打印最后一个字段为2013的每一行。

如果您只想计算电影,可以这样做:

awk '$(NF)==2013 { count+=1 }; END { print count }' input.tsv

如果您想使用

grep '2013$' input.tsv | uniq -c