比如有两个三个表
create table user
(
id INT(11) NOT NULL ,
uid INT(11) NOT NULL,
)
insert into user VALUES( '1','1')
insert into user VALUES( '2','2')
insert into user VALUES ( '3','3')create table test1
(
id INT(11) NOT NULL ,
uid INT(11) NOT NULL,
title varchar(20)
)create table test2
(
id INT(11) NOT NULL ,
uid INT(11) NOT NULL,
time INT
)
insert into test2 ( '1','1','13975204')
insert into test2 ( '2','2','13975238')
insert into test2 ( '3','3','13975562')create table test3
(
id INT(11) NOT NULL ,
uid INT(11) NOT NULL,
fid INT(11) NOT NULL
)
insert into test3 ( '2','1','2')
insert into test3 ( '3','1','3')以上uid fid 都是来自user中uid 的值
问题来了 请问如何查询才能得到如下效果
uid title time
1 13975204
2 13975238
3 13975562我的sql语句是这样的
SELECT t.uid,t.title,e.time FROM test1 t, test2 e LEFT JOIN test3 s ON t.uid=s.fid OR e.uid=s.fid WHERE s.uid=1 OR t.uid=1 OR e.uid=1因为test1表一条数据也没有所以这条语句就不能通过,请高手们快来看看吧
create table user
(
id INT(11) NOT NULL ,
uid INT(11) NOT NULL,
)
insert into user VALUES( '1','1')
insert into user VALUES( '2','2')
insert into user VALUES ( '3','3')create table test1
(
id INT(11) NOT NULL ,
uid INT(11) NOT NULL,
title varchar(20)
)create table test2
(
id INT(11) NOT NULL ,
uid INT(11) NOT NULL,
time INT
)
insert into test2 ( '1','1','13975204')
insert into test2 ( '2','2','13975238')
insert into test2 ( '3','3','13975562')create table test3
(
id INT(11) NOT NULL ,
uid INT(11) NOT NULL,
fid INT(11) NOT NULL
)
insert into test3 ( '2','1','2')
insert into test3 ( '3','1','3')以上uid fid 都是来自user中uid 的值
问题来了 请问如何查询才能得到如下效果
uid title time
1 13975204
2 13975238
3 13975562我的sql语句是这样的
SELECT t.uid,t.title,e.time FROM test1 t, test2 e LEFT JOIN test3 s ON t.uid=s.fid OR e.uid=s.fid WHERE s.uid=1 OR t.uid=1 OR e.uid=1因为test1表一条数据也没有所以这条语句就不能通过,请高手们快来看看吧
上面的INSERT 语句由于复制粘贴所以搞错了 对应create语句下的insert 语句是针对相应表的
敬请包涵、、、
WHERE s.uid=1 OR t.uid=1 OR e.uid=1