Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQLite中加速SQL选择_Sqlite_Select_Performance - Fatal编程技术网

在SQLite中加速SQL选择

在SQLite中加速SQL选择,sqlite,select,performance,Sqlite,Select,Performance,我正在创建一个大型数据库,为了解决这个问题,假设它包含3个表: A.带有字段的表格“雇员”: id=整数主索引自动增量 其他人不重要 B.带有字段的“工作地点”表: id=整数主索引自动增量 其他人不重要 C.带有字段的表格“工作日”: id=整数主索引自动增量 emp_id=是员工的外键(id) job_id=是job_站点(id)的外键 datew=表示实际工作日的整数,由自1970年1月1日午夜以来的Unix日期(以秒为单位)表示 此数据库中最常见的操作是显示特定员工的工作日。我执行以下

我正在创建一个大型数据库,为了解决这个问题,假设它包含3个表:

A.带有字段的表格“雇员”:

id=整数主索引自动增量

其他人不重要

B.带有字段的“工作地点”表:

id=整数主索引自动增量

其他人不重要

C.带有字段的表格“工作日”:

id=整数主索引自动增量

emp_id=是员工的外键(id)

job_id=是job_站点(id)的外键

datew=表示实际工作日的整数,由自1970年1月1日午夜以来的Unix日期(以秒为单位)表示


此数据库中最常见的操作是显示特定员工的工作日。我执行以下select语句:


选择*FROM Workdays,其中emp_id='Actual Employee id'和job_id='Actual job Site id'和datew>=D1和datew如果您经常使用上述查询,那么您可以通过创建包含查询中列的多列索引来获得更好的性能:

CREATE INDEX WorkdaysLookupIndex ON Workdays (emp_id, job_id, datew);
有时,您只需创建索引并尝试查询,看看什么更快