日期:2014-05-19  浏览次数:20674 次

这种情况是不是要使用游标或有其他好办法么?
@a=200

table
ID     SXI       XXI  
2       500     300
4       299     200
6       199     100    
3       99       0

使用@a   去talbe检索   当@的值位于   SXI   XXI之间时候
检索出ID出来
如   @a=200
则   检索出   4       299     200这条记录
检索出ID   4

该如何?CODE说话!

------解决方案--------------------
select * from t where @a between xxi and sxi
------解决方案--------------------
try:

CREATE TABLE #T([id] int,SXI int,XXI int)
INSERT INTO #T
SELECT 2 ,500 ,300 UNION ALL
SELECT 4 ,299 ,200 UNION ALL
SELECT 6 ,199 ,100 UNION ALL
SELECT 3 ,99 ,0

DECLARE @a int
SET @a=400
SELECT [id] FROM #T WHERE @a BETWEEN XXI AND SXI OR @a BETWEEN SXI AND XXI

DROP TABLE #T