您好我试图根据最大值获取整个记录信息,例如,假设我有这个名为animals的表
id name price
____ ______ _______
1 dog 250
2 cat 100
3 bird 50
最高价格是250然后我想要检索其记录 所以我应该
id name price
____ ____ _____
1 dog 250
这是我写的查询,但我知道错了
Select * FROM animals where price = MAX(price);
答案 0 :(得分:3)
试试这个:
Select * FROM animals where price = (Select MAX(price) FROM animals);
答案 1 :(得分:1)
另一种方法是,如果您使用MySQL(由于多个冲突的标签而不清楚),则会order
并使用limit
:
select *
from animals
order by price desc
limit 1;
如果您使用的是oracle,则需要使用子查询,我还会使用with
,然后使用rownum
指定第一条记录:
with animalsub as
(
select id, name, price
from animals
order by price
)
select *
from animalsub
where rownum = 1;
答案 2 :(得分:0)
_try这个:) SELECT * FROM animals 按价格排序 限制1
答案 3 :(得分:0)
你可以试试这些:
select * from [animals] where price= (select max(price) from [animals])
select top(1) * from [animals] order by price desc