根据日期从连接中选择列的值 - 使用表和代码

时间:2018-06-07 19:17:48

标签: sql sql-server tsql

我之前发布了一个类似的问题,但我想我会再次发布一些额外的信息。

基本上我需要做的是将值拉入基于日期的数据集中,并且我需要为每个客户提供唯一值。每个客户都有他们所在的产品,以及他们将在续订时自动滚动的产品。

如果续约日期超过今天,我需要退回今天的产品。如果他们的续约日期少于今天,我需要提供更新产品。

成品应如下所示:

CREATE TABLE mytable(
FIELD1 VARCHAR(6) NOT NULL PRIMARY KEY
,FIELD2 VARCHAR(11) NOT NULL
,FIELD3 VARCHAR(8) NOT NULL
,FIELD4 VARCHAR(10) NOT NULL
);
INSERT INTO mytable(FIELD1,FIELD2,FIELD3,FIELD4) VALUES 
('custid','product','category','enddate');
INSERT INTO mytable(FIELD1,FIELD2,FIELD3,FIELD4) VALUES  
('1','FlexLife','H','01/01/2060');
INSERT INTO mytable(FIELD1,FIELD2,FIELD3,FIELD4) VALUES 
('2','whoellife12','R','06/08/2019');

这是第一个数据集的样子:

CREATE TABLE mytable(
FIELD1 VARCHAR(6) NOT NULL PRIMARY KEY
);
INSERT INTO mytable(FIELD1) VALUES ('custid');
INSERT INTO mytable(FIELD1) VALUES ('1');
INSERT INTO mytable(FIELD1) VALUES ('2');

这应该与此数据集结合以实现结果:

CREATE TABLE mytable(
FIELD1 VARCHAR(6) NOT NULL PRIMARY KEY
,FIELD2 VARCHAR(12) NOT NULL
,FIELD3 VARCHAR(8) NOT NULL
,FIELD4 VARCHAR(10) NOT NULL
);
INSERT INTO mytable(FIELD1,FIELD2,FIELD3,FIELD4) VALUES   
('custid','product','category','enddate');
INSERT INTO mytable(FIELD1,FIELD2,FIELD3,FIELD4) VALUES    
('1','wholelife12','R','02/07/2019');
INSERT INTO mytable(FIELD1,FIELD2,FIELD3,FIELD4) VALUES    
('2','powerlife12','R','06/08/2019');
INSERT INTO mytable(FIELD1,FIELD2,FIELD3,FIELD4) VALUES    
('1','flexlife','H','01/01/2060');
INSERT INTO mytable(FIELD1,FIELD2,FIELD3,FIELD4) VALUES    
('2','flexlife','H','1/1/2060');

提前感谢您的帮助!

0 个答案:

没有答案