2
我正在使用SQLite 3.11。我创建一个表如下:一个字段的后期计算
CREATE TABLE MyTable (F1 INTEGER, F2 INTEGER, F3 INTEGER, F4 INTEGER);
然后添加以下记录:
INSERT INTO MyTable (F1, F2) Values (1, 1);
INSERT INTO MyTable (F1, F2) Values (1, 2);
INSERT INTO MyTable (F1, F2) Values (2, 2);
INSERT INTO MyTable (F1, F2) Values (2, 3);
我想根据F1从MyTable的选择和排序,然后F3,和F4如下:
SELECT * FROM MyTable ORDER BY F1, F3, F4
但是F3和F4是基于F1,F2计算的,计算起来有点费时。在这种情况下,是否有可能执行延迟计算来提高性能。
即:
- 比较两个记录与他们的F1值。如果它们不同,则直接返回订单。
- 如果它们的F1值相同,则计算F3值并根据F3进行排序。
这可能吗?
感谢