【发布时间】:2011-10-27 16:52:57
【问题描述】:
不知道怎么描述,所以我举个例子:
表格PAGES
id int
parent int
name nvarchar
status tinyint
表PAGES_MODULES
id int
id_parent int
module_type nvarchar
module_id int
status int
一个页面可以有多个链接模块。示例记录:
id parent name status
1 -1 Xyz 1
2 -1 Yqw 1
id id_parent module_type module_id status
1 1 ARTICLE 1 1
2 1 GALLERY 2 1
3 2 CATEGORY 3 1
我需要创建一个选择,如果我选择左连接 page_modules,它不会返回 2 个结果。
我想选择返回链接模块的方式:
id parent name status modules
1 -1 Xyz 1 ARTICLE GALLERY
2 -1 Yqw 1 CATEGORY
这可能吗?
谢谢。
更新
我在 SELECT 方法中尝试了 COALESE、CROSS APPLY 和 SELECT 并得出以下结论:
http://blog.feronovak.com/2011/10/multiple-values-in-one-column-aka.html
希望我可以在这里发布这些,而不是垃圾邮件或其他内容。
【问题讨论】:
-
PAGES_MODULES 中的 id_parent 是 PAGES.id 的外键?
-
尝试使用
coalesce函数,如 [this SO question][1] [1] 中所述:stackoverflow.com/questions/122942/…