MySql条件视图

时间:2013-03-09 19:12:35

标签: mysql view multiple-tables

我想创建一个MySql视图,该视图仅在存在另一个值时包含值,而在其他几个表中不为null。我可以想象一个很长的复杂查询使用'NOT IN'或JOINS但我想得到一些关于最佳方法的反馈。想象一下如下: 我有几个这样的表:

T1   T2   T3
id   id   id
data1   data2   data3

等。也许8张这样的桌子。 id是所有表共有的共享密钥。然后我想要一个只显示id collumn的视图,当且仅当id存在于所有上述表中时,并且该表中数据的值在具有该id的行中不为null。

由于

1 个答案:

答案 0 :(得分:2)

您可以使用inner join仅显示所有表格中的记录

select t1.id
from t1
inner join t2 on t1.id = t2.id
inner join t3 on t1.id = t3.id
where data1 is not null 
and data2 is not null 
and data3 is not null