【发布时间】:2020-07-30 08:50:06
【问题描述】:
我有价格表:
CREATE TABLE IF NOT EXISTS price (
id INTEGER PRIMARY KEY AUTOINCREMENT,
shop INTEGER NOT NULL,
product INTEGER NOT NULL,
delivery VARCHAR(100),
score REAL,
opinions INTEGER,
avaiable INTEGER,
price REAL,
time INTEGER NOT NULL,
FOREIGN KEY(shop) REFERENCES shop(id),
FOREIGN KEY(product) REFERENCES product(id),
FOREIGN KEY(time) REFERENCES time(id)
);
我需要显示价格,但订单应该从大到小得分,意见从大到小,但价格应该从小到大相反。
这不起作用:
select score, opinions, shop.name, price from price
left join shop on shop.id = price.shop
order by score asc, price desc;
在 SQLite 中可以吗?
我的数据如下所示:
4.5 | 3380 | abfoto.pl | 9199.0
5.0 | 1304 | cyfrowe.pl | 9299.0
5.0 | 744 | fotoforma.pl | 9399.0
5.0 | 199 | fotopanorama.pl | 9099.0
4.0 | 911 | empik.com | 9099.0
5.0 | 3847 | komputronik.pl | 9190.0
5.0 | 1053 | sferis.pl | 9199.0
5.0 | 578 | fotoplus.pl | 9199.0
5.0 | 24 | e-oko.pl | 9199.0
5.0 | 55 | foto-kolodziej.pl | 9299.0
5.0 | 164 | foto-szop.pl | 9299.0
5.0 | 47139 | allegro.pl | 9347.77
5.0 | 526 | fotosoft.pl | 9399.0
4.5 | 7129 | mall.pl | 9401.0
5.0 | 144 | fotostrada.pl | 9499.0
顶部应该有5.0|fotopanorama.pl|9099.0。
【问题讨论】:
-
您似乎知道 ASC 和 DESC 的用途。所以如果你想要分数从大到小,意见从大到小,但价格应该从小到大相反为什么你的代码中有:
score asc, price desc?
标签: sql sqlite sql-order-by