【发布时间】:2021-04-09 18:01:17
【问题描述】:
我需要创建一个价格比较工具,所以这样的要求来了。为此,我的数据库查询有两个不同的结果集。我的数据库是 SQL Server 2017 Developer Edition。我想要的是并排合并两个结果集。见下图:
我的查询
SELECT ADuration Duration, APlan_Price AmazonPrice
FROM tbl_AmazonPlans
WHERE AProduct_Name = 'Air Conditioner'
AND 14678 BETWEEN TRY_CONVERT(int, PARSENAME(REPLACE(APrice_Range, '-', '.'), 2))
AND TRY_CONVERT(int, PARSENAME(REPLACE(APrice_Range, '-', '.'), 1))
SELECT Duration, Plan_Price GwPrice
FROM tbl_PlanDetails
WHERE Product_Name = 'Air Conditioner'
AND 14678 BETWEEN TRY_CONVERT(int, PARSENAME(REPLACE(Price_Range, '-', '.'), 2))
AND TRY_CONVERT(int, PARSENAME(REPLACE(Price_Range, '-', '.'), 1))
更新
来自表的结果集可能/可能不具有相同的架构。也没有连接点,因为它们没有公共键。但是是的,它们包含一些可能相同的列,并且基于这些相同的列,我必须获得预期的结果集。
【问题讨论】:
-
您是否假设两个表都包含相同的 Duration 值集?例如,当一个表包含值为 10 的行而另一个不包含时,结果集中应该出现什么?
-
请不要使用图像作为数据,使用格式化文本。
-
@DaleK - 据我所知,截图比格式化文本更容易和更好地解释问题/结果。此外,如果它不是 SO 团队的社区标准,那么这个(嵌入图像)已被 SO 开发人员自己删除。
-
不,屏幕截图并不容易或更好......它们被听到阅读,在移动设备上效果不佳并且通常会打断问题的流程。仅在尝试显示用户界面或报告布局时才应使用图像。事实上,样本数据最好使用 DDL+DML 呈现,因为这样人们可以复制和粘贴它来解决您的问题。 Reference
-
Further reference "请勿发布代码、数据、错误消息等的图像..."
标签: sql sql-server tsql sql-server-2017