【发布时间】:2012-10-19 10:49:29
【问题描述】:
我有一张像下面这样的表
CREATE TABLE Products(Product_id INT, ProductName VARCHAR(255), 精选枚举('Yes', 'No'), 优先枚举('p1', 'p2', 'p3')) 插入产品(产品名称、特色、优先级) VALUES('产品 A', '是', 'p1'), ('产品 B','否','p2'), ('产品 C', '是', 'p1'), ('产品 D','否','p1'), ('产品 E','是','p3'), ('产品 F','否','p2'), ('产品 G','是','p1'), ('产品 H','是','p2'), ('产品 I','否','p2'), ('产品 J','是','p3'), ('产品 K', '是', 'p1'), (“产品 L”、“否”、“p3”);我需要获得特色产品,然后是优先级为 p1、p2 和 p3 的产品
操作: 产品名称 |精选 |优先 产品 A 是 p1 产品 C 是 p1 产品 G 是 p1 产品 K 是 p1 产品 H 是 p2 产品 E 是 p3 产品 J 是 p3 产品 D 编号 p1 产品 B 没有 p2 产品 F 编号 p2 产品 I 无 p2 产品 L No p3我在下面写了一个不工作的查询..
选择 * 来自产品 ORDER BY Featured IN ('Yes') desc, 优先级 IN ('p1', 'p2', 'p3') desc你能找出其中的错误吗
【问题讨论】:
-
您看到了什么错误?您编写的声明应该有效,Yogendra Singh 推荐的简化声明也应该有效。您是否仅选择 Product_id 列?在您的示例中,它将全部为 NULL。