【发布时间】:2018-12-29 14:31:46
【问题描述】:
我有一个名为 Target 的表,其中有 5 列:
ProductLevel
ProductName
CustomerLevel
CustomerName
Target
在另一个名为 Products 的表中,我有 3 列:
ProductId
ProductCategory
ProductBrand
在名为 Customer 的第三张表中,我有 3 列:
CustomerID
CustomerName
SubCustomerName
有没有办法进行动态连接,根据我在第一个表中的值选择我将在 JOIN 中使用的列?
示例:如果在第一个表中我在 ProductLevel 中有类别,我将使用 ProductCategory 字段加入表产品。如果我有 Brand,我将使用 ProductBrand 加入... Customer 表也是如此。
PS:我正在寻找一种动态创建它的方法,我可以在不更改代码的情况下向该表添加新列,然后我可以在 Product Table 和 Segment 中将 ProductSegment 列作为值目标表中的 ProductLevel。
【问题讨论】:
-
如果不修改 SQL 代码,您将无法做到这一点。您可以在应用程序中生成代码(比如使用 Java 或类似的东西),但那是动态 SQL。