'When to create multi-column indices in SQLite?

Assume I have a table in an SQLite database:

CREATE TABLE orders (
    id INTEGER PRIMARY KEY,
    price INTEGER NOT NULL,
    updateTime INTEGER NOT NULL,
) [WITHOUT ROWID];

what indices should I create to optimize the following query:

SELECT * FROM orders WHERE price > ? ORDER BY updateTime DESC;

Do I create two indices:

CREATE INDEX i_1 ON orders(price);
CREATE INDEX i_2 ON orders(updateTime);

or one complex index?

CREATE INDEX i_3 ON orders(price, updateTime);

What can be query time complexity?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source