EX:DECLARE @t TABLE (Code VARCHAR(10),dt DATETIME,price decimal(14,2)) INSERT INTO @t SELECT '中国石油','2008-10-01',11.53 UNION ALL SELECT '中国石油','2008-10-02',11.74 UNION ALL SELECT '中国石油','2008-10-03',11.13 UNION ALL SELECT '中国石油','2008-10-04',12.13 UNION ALL SELECT '中国石油','2008-10-05',11.30 UNION ALL SELECT '中国石油','2008-10-06',11.23 --头 SELECT * FROM @t a WHERE NOT EXISTS( SELECT * FROM @t WHERE ABS(DATEDIFF(dd,a.dt,dt))=1 AND price>a.price ) --底 SELECT * FROM @t a WHERE NOT EXISTS( SELECT * FROM @t WHERE ABS(DATEDIFF(dd,a.dt,dt))=1 AND price<a.price )
INSERT INTO @t
SELECT '中国石油','2008-10-01',11.53
UNION ALL SELECT '中国石油','2008-10-02',11.74
UNION ALL SELECT '中国石油','2008-10-03',11.13
UNION ALL SELECT '中国石油','2008-10-04',12.13
UNION ALL SELECT '中国石油','2008-10-05',11.30
UNION ALL SELECT '中国石油','2008-10-06',11.23
--头
SELECT * FROM @t a
WHERE NOT EXISTS(
SELECT * FROM @t
WHERE ABS(DATEDIFF(dd,a.dt,dt))=1
AND price>a.price
)
--底
SELECT * FROM @t a
WHERE NOT EXISTS(
SELECT * FROM @t
WHERE ABS(DATEDIFF(dd,a.dt,dt))=1
AND price<a.price
)