我有一个像这样的 sql 查询:
SELECT Code
FROM xyz
WHERE xyz.Code IN ('20','10') AND price =
(select min(price) FROM xyz WHERE CODE IN ('20','10'));
查询后的期望输出:10
表 xyz :-
价格:1 2 1
代码:10 20 30
这个sql语句有没有更好的写法呢?因为在我的 sql 语句“WHERE CODE IN ('20','10')”中重复了两次,我试图避免调用此语句两次
最佳答案
如果您只想接收一行,您可以使用 ORDER BY 和 LIMIT:
SELECT Code
FROM xyz
WHERE xyz.Code IN ('20','10')
ORDER BY price
LIMIT 1
关于mysql - 通过避免冗余编写更好的 SQL 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8430657/