Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/86.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

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 - Fatal编程技术网

SQlite查询速度慢,只需添加一个;及;判断

SQlite查询速度慢,只需添加一个;及;判断,sql,sqlite,Sql,Sqlite,我使用上面的sql查询速度很快 但当我在上述sql语句末尾添加sql代码“和d.dictionary_id=9”时: SELECT distinct * FROM dictionary d join dictionary_with_word dw on dw.dictionary_id=d.dictionary_id join word w on w.word_id=dw.word_id join word_day wd on wd

我使用上面的sql查询速度很快

但当我在上述sql语句末尾添加sql代码“和d.dictionary_id=9”时:

SELECT distinct
    *
    FROM

    dictionary d  
    join dictionary_with_word dw on dw.dictionary_id=d.dictionary_id  
    join word w on w.word_id=dw.word_id  
    join word_day wd on  wd.word_id=w.word_id  
    join have_buy_dictionary hbd on hbd.have_buy_dictionary_dictionary=d.dictionary_id

    where wd.user_id=777 and wd.word_day=0 
然后会很慢


为什么?

数据库中的索引可能有问题,但很难猜测。可能必须在
word\u day
提供
表结构
索引创建脚本
执行计划
,如果可以的话,会让事情变得更容易。与您的问题无关,但是从每个表中选择每个字段是浪费的,因为您会得到两个连接字段。我还将关键字区分开来,这是对击键的浪费。
SELECT distinct
    *
    FROM

    dictionary d  
    join dictionary_with_word dw on dw.dictionary_id=d.dictionary_id  
    join word w on w.word_id=dw.word_id  
    join word_day wd on  wd.word_id=w.word_id  
    join have_buy_dictionary hbd on hbd.have_buy_dictionary_dictionary=d.dictionary_id

    where wd.user_id=777 and wd.word_day=0 
    and d.dictionary_id=9