在python/C++中激发SQLlike查询工具

Stimulate SQL like query tool in python/C++

实现 SQL 之类的查询工具,其中必须按给定顺序从 STDIN 读取以下内容:-

1. Number of rows of the table (n) and Number of queries (q).
2. Table fields separated by Comma.
3. n line containing table rows of the table
4. q queries where clause.

我们必须在 STDOUT 上打印每个查询的输出。

例如:-

输入:

4,2

"Name","Age","Sex","Salary"

1,"Joy",21,"M",2000

2,"Alan",28,"M",500

3,"John",30,"M",1000

4,"Nemo",45,"F",1500

Salary>=1000

Sex="M" and Salary>499 

输出:

2

3

你们能告诉我应该如何处理这个问题吗? 我应该使用什么数据结构来存储 table 和处理查询?

PS: 我不是要现成的解决方案,我只是需要一步一步的帮助来解决这个问题。

我猜这个练习很刺激 SQL 就像练习(而不是真正的 SQL 因为这是显而易见的解决方案)。

我有一个字典列表(每行一个字典)用数据填充它,然后使用列表理解来过滤行

[ line for line in lines if (line['Sex']=='M') and (line['Salary'] > 499)]

当然,要创建这样的 python 命令,您需要进行大量解析 - 但这是方向