例如,我的列名称为tax
,tax
具有以下值:
TAX
-----
3681
4292
4895
1894
1127
程序应显示数字3681和1127。任何回应都非常感谢。顺便说一句,我们学校正在使用MS SQL Server 2000。
答案 0 :(得分:0)
SELECT MIN(tax), Max(tax)
FROM Table
WHERE tax %2 <> 0
演示:SQL Fiddle
如果你真的想从你的无序列表中得到第一个和最后一个,这是一个比较棘手的命题,结果可能会不一致,因为没有ORDER BY的值你不能保证顺序。通常会使用ROW_NUMBER(),但在2000年不可用,如果这是你有选项之后的事情,最简单的方法就是:
SELECT Tax, IDENTITY(1,1) as TaxID
INTO Table2
FROM Table1
SELECT (SELECT TOP 1 Tax FROM Table2 WHERE Tax %2 <> 0 ORDER BY TaxID)
,(SELECT TOP 1 Tax FROM Table2 WHERE Tax %2 <> 0 ORDER BY TaxID DESC)
答案 1 :(得分:0)
根据我对您的问题的理解,您正在寻找具有最低或最高奇数的行作为最后一个字符?如果是这样,那么这应该有效:
select t.tax
from yourtable t
join (
select min(right(tax,1)) minoddchar, max(right(tax,1)) maxoddchar
from yourtable
where tax % 2 = 1 --ensure odd result
) t2 on right(t.tax,1) in (t2.minoddchar, t2.maxoddchar)
答案 2 :(得分:0)
您可以使用:
SELECT tax FROM Table ORDER BY tax.id ASC LIMIT 1
UNION
SELECT tax FROM Table ORDER BY tax.id DESC LIMIT 1
或者这个:
SELECT MIN(tax.id), tax FROM Table
UNION
SELECT MAX(tax.id), tax FROM Table
答案 3 :(得分:-1)
select tax from Table fetch first 1 row only;
select tax from table fetch last 1 row only;