1

我们的 table1 有列(id、firstname、lastname、gender)。

然后 table2 与列(manid、bodyfat、task、matchid)

然后 table3 与列(womanid,bodyfat,womandate,wmatchid)

所以,在这里我想用table1的列(id,firstname,lastname,gender),table2的列(bodyfat,task)和table3的列(bodyfat,womandate)制作一个可更新的mysql视图。bodyfat 是通过 javascript 计算并使用 php 发送到数据库的,因此您可以理解,在视图的每一行中,我们将 table2 的列 (bodyfat, 命令) 设为 null,否则我们将 table3 的列设为 null (bodyfat , womandata) 如果我们分别谈论的是男人或女人。

Create view myview as
Select table.id, table1.firstname, table1.lastname, table1.gender, 
table2.bodyfat, table2.mandate, table3.bodyfat, table3.womandate
From step1
JOIN table2 ON table1.id = table2.matchid
JOIN table3 ON table1.id = table3.wmatchid;

因此,如果我使用LEFT JOIN语句来构建我的视图,我将正确显示空值,但该视图将不可更新。

如果否则我使用JOIN语句来构建我的视图,则会发生相反的事情,因此视图现在是可更新的,但它不能保留空值。

是否有另一个连接语句可以用来保持空值和可更新?

4

0 回答 0