我想通过连接7个表来创建一个视图。我也创建了,但它没有显示来自实际表的任何数据。
在第一阶段,我只通过连接两个表来创建视图。它工作得很好,显示了数据,
CREATE VIEW tbi_dd_detail_view AS
SELECT
d.dd_metric_config_id,
d.metric_name,
d.keywords,
d.domain_id,
d.is_active,
c.dd_query_id,
c.datasource_id,
c.query,
c.virtual_query_name
FROM
tbi_dd_config_master d
JOIN
tbi_dd_custom_query_config c ON d.dd_metric_config_id = c.dd_metric_config_id 样本数据:

类似地,我为7个表创建了视图。它创建了,但没有显示任何数据。
CREATE VIEW tbi_dd_detail_view AS
SELECT
d.dd_metric_config_id,
d.metric_name,
d.keywords,
d.domain_id,
d.is_active,
d.created_by,
d.created_date,
c.dd_query_id,
c.datasource_id,
c.query,
c.virtual_query_name,
v.dd_dataview_id,
v.dataview_id,
b.dd_dashboard_id,
b.dashboard_id,
r.dd_report_id,
r.report_id,
r.report_type_name,
r.virtual_report_name,
t.dd_table_view_id,
t.data_source_id,
t.table_view_id,
t.virtual_table_name,
w.dd_webservice_id,
w.password,
w.username,
w.virtual_webservice_name,
w.webservice_url
FROM
tbi_dd_config_master d
JOIN
tbi_dd_custom_query_config c ON d.dd_metric_config_id = c.dd_metric_config_id
JOIN
tbi_dd_dataview_config v ON d.dd_metric_config_id = v.dd_metric_config_id
JOIN
tbi_dd_dashboard_config b ON d.dd_metric_config_id = b.dashboard_id
JOIN
tbi_dd_report_config r ON d.dd_metric_config_id = r.dd_metric_config_id
JOIN
tbi_dd_table_view_config t ON d.dd_metric_config_id = t.dd_metric_config_id
JOIN
tbi_dd_webservice_config w ON d.dd_metric_config_id = w.dd_metric_config_id 我搜索了一些链接并尝试了不同的方法来创建视图,但不幸的是,我最终得到了相同的结果。
CREATE VIEW tbi_dd_detail_view AS
SELECT
d.dd_metric_config_id,
d.metric_name,
d.keywords,
d.domain_id,
d.is_active,
d.created_by,
d.created_date,
c.dd_query_id,
c.datasource_id,
c.query,
c.virtual_query_name,
v.dd_dataview_id,
v.dataview_id,
b.dd_dashboard_id,
b.dashboard_id,
r.dd_report_id,
r.report_id,
r.report_type_name,
r.virtual_report_name,
t.dd_table_view_id,
t.data_source_id,
t.table_view_id,
t.virtual_table_name,
w.dd_webservice_id,
w.password,
w.username,
w.virtual_webservice_name,
w.webservice_url
FROM
tbi_dd_config_master d,
tbi_dd_custom_query_config c,
tbi_dd_dataview_config v,
tbi_dd_dashboard_config b,
tbi_dd_report_config r,
tbi_dd_table_view_config t,
tbi_dd_webservice_config w
WHERE
d.dd_metric_config_id = c.dd_metric_config_id
AND d.dd_metric_config_id = v.dd_metric_config_id
AND d.dd_metric_config_id = b.dashboard_id
AND d.dd_metric_config_id = r.dd_metric_config_id
AND d.dd_metric_config_id = t.dd_metric_config_id
AND d.dd_metric_config_id = w.dd_metric_config_id 有人能帮我找出我做错的地方吗?
连接3个表和输出:

发布于 2015-08-17 12:51:34
如果没有表的定义,就很难提出选项。
首先,您应该连接两个表来创建视图,并在联接条件下一次添加另一个表,并测试视图未能显示预期结果。
您还可以在查询结束时使用LEFT JOIN和添加group by子句,看看会发生什么。
示例:
使用LEFT JOIN并在查询结束时追加group by d.dd_metric_config_id。
https://stackoverflow.com/questions/32044108
复制相似问题