我有这张表AVERAGE
我想
select * from table where VhrNum=MIN(VhrNum) and EmptyOrNot=1
我已经尝试过此查询,但它无效
select *
from Average
where Itmnum='1'
and VhrNum = (
select MIN(VhrNum)
from (
select *
from Average
where EmptyOrNot = '1'
)
)
在我的情况下,它应该选择第三行
答案 0 :(得分:3)
为什么不从列top 1
行和order by
开始?
SELECT TOP 1 *
FROM [table]
WHERE EmptyOrNot=1
ORDER BY VhrNum
答案 1 :(得分:2)
将TOP 1
与ORDER BY
select Top 1 * from table where EmptyOrNot=1
Order by VhrNum ASC
如果您有多条VhrNum
分钟的记录,并且想要所有领带记录,请使用TOP 1 WITH TIES
select Top 1 With Ties * from table where EmptyOrNot=1
Order by VhrNum ASC
答案 2 :(得分:0)
您可以尝试这样
extension String {
var digits: String {
return components(separatedBy: CharacterSet.decimalDigits.inverted)
.joined(separator: "")
}
}
let test = "Hello 54-Today is 112216"
let fixed = test.digits
print(fixed) //54112216
答案 3 :(得分:0)
汇总功能需要GROUP BY
- 或者您可以ORDER BY
并选择第一个。
汇总不会让你做SELECT *
,这无论如何都不是很好的做法,汇总让你更清楚你实际上是想要获得{{1} } 这个的。 MIN
允许您执行TOP 1/ORDER BY
,但可能不太清楚,您真正想要得到的只是SELECT *
。
骨料:
MIN(VhrNum)
顶
SELECT MIN(VhrNum)
FROM Average
WHERE EmptyOrNot = 1
GROUP BY EmptyOrNot
答案 4 :(得分:0)
你可以试试这个:
select top 1 * from table where VhrNum= (select min(VhrNum) from table);