【发布时间】:2014-03-31 19:55:42
【问题描述】:
我想在一个包含数据的表和另一个具有字段必须显示或不显示的标志的表之间创建一个视图。
TABLE_EXAMPLE
+---------+---------+---------+-----------------+
| id | field_1 | field_2 | field_3 |
+---------+---------+---------+-----------------+
| 1 | test | 500 | another content |
+---------+---------+---------+-----------------+
| 2 | blah | 800 | text_lorem |
+---------+---------+---------+-----------------+
| 3 | hi! | 100 | lorem_impsum |
+---------+---------+---------+-----------------+
REFERENCE_TABLE(此表通过table_name、field_name、entry_id与其他表连接,其他字段为show/not_show标志)
+--------------+------------+----------+------+
| table_name | field_name | entry_id | show |
+--------------+------------+----------+------+
| TABLE_EXAMPLE| field_1 | 1 | 0 |
+--------------+------------+----------+------+
| TABLE_EXAMPLE| field_2 | 1 | 1 |
+--------------+------------+----------+------+
| TABLE_EXAMPLE| field_3 | 1 | 0 |
+--------------+------------+----------+------+
| TABLE_EXAMPLE| field_1 | 2 | 1 |
+--------------+------------+----------+------+
| TABLE_EXAMPLE| field_2 | 2 | 0 |
+--------------+------------+----------+------+
| TABLE_EXAMPLE| field_3 | 2 | 1 |
+--------------+------------+----------+------+
| TABLE_EXAMPLE| field_1 | 3 | 1 |
+--------------+------------+----------+------+
| TABLE_EXAMPLE| field_2 | 3 | 1 |
+--------------+------------+----------+------+
| TABLE_EXAMPLE| field_3 | 3 | 0 |
+--------------+------------+----------+------+
这是结果视图。如果标志为 0,则字段内容必须为 NULL
RESULT_TABLE
+---------+---------+---------+-----------------+
| id | field_1 | field_2 | field_3 |
+---------+---------+---------+-----------------+
| 1 | NULL | 500 | NULL |
+---------+---------+---------+-----------------+
| 2 | blah | NULL | text_lorem |
+---------+---------+---------+-----------------+
| 3 | hi! | 100 | NULL |
+---------+---------+---------+-----------------+
有什么想法或建议吗?没看懂。
【问题讨论】: