题目
手写 SQL:表中有 user_id 和 price 两个字段,查出 user_id = 1 时的最大 price
答案
@[toc] --- 假设表名为 prices,可以使用如下 SQL 查询 user_id=1 的最大价格: ## 子查询 ```sql SELECT MAX(price) FROM prices WHERE user_id = 1; ``` ## INNER JOIN ```sql SELECT MAX(prices.price) FROM prices INNER JOIN ( SELECT id FROM prices WHERE user_id = 1 ) AS sub ON prices.id = sub.id; ``` ## IN ```sql SELECT MAX(price) FROM prices WHERE id IN ( SELECT id FROM prices WHERE user_id = 1 ); ``` ## EXISTS ```sql SELECT MAX(price) FROM prices WHERE EXISTS ( SELECT * FROM prices AS sub WHERE sub.user_id = 1 AND sub.id = prices.id ); ```