我有两个这样的mysql表
CREATE TABLE IF NOT EXISTS tbl1 (
`id` INTEGER(2) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT ,
`name` VARCHAR(20) NOT NULL
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE TABLE IF NOT EXISTS tbl2 (
`tbl_id` INTEGER(2) UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT ,
`id2` INTEGER(2) UNSIGNED NOT NULL ,
`email` VARCHAR(20) NOT NULL ,
FOREIGN KEY (`id2`) REFERENCES tbl1(`id`)
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
这是 tbl1 中的示例数据
1 hello
2 world
3 happy
4 end
和 tbl2 中的示例数据
2 1 me@mail
3 2 my@mail
4 4 you@mail
现在我想选择姓名和电子邮件加入两个表。这是sql
select name,email from tbl1 t1,tbl2 t2 where t2.id2 = t1.id;
有了它,我得到了
hello me@mail
world my@mail
end you@mail
但我想要 tbl1 中的所有行
hello me@mail
world my@mail
happy null or nothing or 0
end you@mail
我在这里卡住了。任何帮助将不胜感激。提前致谢。