我确实尝试过搜索这个,但不知道如何正确表达它,所以我希望这里有人能够提供帮助。SQL Server:结合日期范围和产品代码列表
我有两个表,产品和日期范围。
CREATE TABLE product
(
Code varchar(50) NOT NULL,
Price money
);
CREATE TABLE daterange
(
yyyymm varchar(6) NOT NULL
);
INSERT INTO product (Code, Price)
VALUES ('10001J',3.68), ('10002K',7.23), ('10003L',4.72);
INSERT INTO daterange (yyyymm)
VALUES (201507),(201508),(201509),(201510);
我想要制作的列表是这样的:
YYYYMM Product
---------------
201507 10001J
201507 10002K
201507 10003L
201508 10001J
201508 10002K
201508 10003L
201509 10001J
201509 10002K
201509 10003L
201510 10001J
201510 10002K
201510 10003L
基本上,创造的所有产品和所有日期的组合。我不知道我是否需要日期范围表,或者是否可以单独使用代码。是的,我可以用Excel或其他方式创建组合,但是我希望将它组合成更大的动态查询。
在此先感谢:)
'CROSS JOIN'如何? –
现在我觉得自己像个白痴。谢谢Felix。还没有遇到过这样的一个:) –
'我不知道我是否甚至需要日期范围表'对于这一点,日期表是不是一件坏事现有的国际海事组织(尽管有实际日期,而不是varchars - 很容易在稍后的时间将它们转换为您的需求)。然后,您可以从该表中选择所需的任何日期范围,而无需每次都创建它。与数字表相同。 – ZLK