0 0

逻辑学---查询SQL3

/****** 对象: 表 [dbo].[t1]    脚本日期: 2010-4-15 15:06:05 ******/ -----因子表
CREATE TABLE [dbo].[t1] (
[A] [int] IDENTITY (1, 1) NOT NULL ,
[B] [int] NULL ,
[C] [int] NULL
) ON [PRIMARY]
GO
A           B           C
----------- ----------- -----------
1           100         1
2           105         2
3           120         3
/****** 对象: 表 [dbo].[t2]    脚本日期: 2010-4-15 15:06:05 ******/ -----复权表
CREATE TABLE [dbo].[t2] (
[ID] [int] IDENTITY (1, 1) NOT NULL ,
[Score] [int] NULL
) ON [PRIMARY]
GO
D          Score
----------- -----------
1           90
2           100
3           101
4           108
5           120
6           150
---------------------------------------------------------
我要实现的结果就是
id          score       Level
----------- ----------- -----------
1           90          0
2           100         1
3           101         1
4           108         2
5           120         3
6           150         3

这个意思就是[t2]  表里面的 score  是否在[t1] 里面的B之间或相等
如果在【T1】之间取最近的
如 101 在 【T1】100-105之间        则取C 中1
  108 在  【T1】105-120之间       则取C 中2
  150 是最后一个,则取他的上一个值就是C中的 3
2010年4月16日 09:19
目前还没有答案

相关推荐

Global site tag (gtag.js) - Google Analytics