【问题标题】:Creating a view with two tables, where second table doesn't have unique IDs创建包含两个表的视图,其中第二个表没有唯一 ID
【发布时间】:2015-03-14 17:40:45
【问题描述】:

我对 SQL 很陌生,如果您能在以下内容中提供任何意见,我将不胜感激。

我有两个表,表 A 和表 B。我想创建一个连接这两个表的视图。

表 A 在 user_ID 列下包含一个唯一用户 ID 列表,表 B 也有一个 user_ID 列,但此列表没有唯一用户 ID,因为其他列提供有关这些用户 ID 的更多信息。

请查看第一回复中的图片以获取示例。

我已经阅读了标准的 VIEW 和 JOIN 查询,但是我不确定如何从 A 和 B 创建一个视图,其中“属性 1”中的值将成为它们自己的列视图。

有人可以帮忙解释一下吗?

【问题讨论】:

标签: mysql sql join view pivot


【解决方案1】:

试试这个:

CREATE VIEW VW_User AS 
SELECT A.User_ID, A.Name, A.Email, 
       MAX(CASE WHEN B.Attribute1 = 'a' THEN B.Attribute2 ELSE '' END) AS 'a', 
       MAX(CASE WHEN B.Attribute1 = 'b' THEN B.Attribute2 ELSE '' END) AS 'b', 
       MAX(CASE WHEN B.Attribute1 = 'c' THEN B.Attribute2 ELSE '' END) AS 'c'
FROM tableA A
LEFT JOIN tableB B ON A.User_ID = B.User_ID 
GROUP BY A.User_ID;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-21
    • 2020-05-17
    • 1970-01-01
    • 1970-01-01
    • 2016-07-26
    • 1970-01-01
    • 2011-03-09
    • 1970-01-01
    相关资源
    最近更新 更多