sqlite uses the best index where possible
sqlite uses the best index where possible
rows read.raw()?.raw() To include an array of column names in the results when using raw(), use raw({columnNames: true}).id is first in your index?id and the expression (tiktok_link IS NULL OR tiktok_link = '')id < will not use other columns in the index after thatINDEXED BY, it does not work neitherid < will make sqlite scan the table?(tiktok_link IS NULL OR tiktok_link = '') in index does not work like mysqlrows read.raw().raw()raw({columnNames: true})(tiktok_link IS NULL OR tiktok_link = '')(tiktok_link IS NULL OR tiktok_link = '')id <id <INDEXED BYCREATE INDEX project_tiktok_link_is_empty_and_id_idx ON project (tiktok_link IS NULL OR tiktok_link == '', id);CREATE INDEX project_tiktok_link_is_empty_and_id_idx ON project (tiktok_link, id);SELECT ... FROM project WHERE id < '01HQ81GRDX539N2EJSW1ECGRMY' AND (tiktok_link IS NULL OR tiktok_link = '')SELECT ... FROM project WHERE (tiktok_link IS NULL OR tiktok_link = '') and id < '01HQ81GRDX539N2EJSW1ECGRMY'CREATE INDEX project_tiktok_link_id_idx ON project (tiktok_link, id);SELECT ... FROM project INDEXED BY project_tiktok_link_id_idx WHERE tiktok_link IS NULL and id < '01HQ81GRDX539N2EJSW1ECGRMY'