m******o 发帖数: 61 | 1 【 以下文字转载自 Database 讨论区 】
发信人: myyaoyao (幸福快乐地生活), 信区: Database
标 题: 请问这个query怎么做
发信站: BBS 未名空间站 (Thu Jul 15 13:16:11 2010, 美东)
TABLE 1:
locationID name
1 aaa
1 bbb
2 bbb
TABLE 2:
name description
aaa AAAA
bbb BBBB
ccc CCCC
我想要的结果是:
locationID name description
1 aaa AAAA
1 bbb BBBB
1 CCCC --- 这一行,TABLE 1 没有CCCC 的name,但是也要列出来。
2 AAAA
2 bbb BBBB
2 | d*2 发帖数: 2053 | 2 你这个要求挺奇怪,不妨试试union
something like:
select t1.lid, t1.name, t2.des from t1, t2 where t1.name = t2.name
union
select distinct(t1.lid), null, t2.des from t1, t2 where t2.name not in (
select t1.name from t1)
【在 m******o 的大作中提到】 : 【 以下文字转载自 Database 讨论区 】 : 发信人: myyaoyao (幸福快乐地生活), 信区: Database : 标 题: 请问这个query怎么做 : 发信站: BBS 未名空间站 (Thu Jul 15 13:16:11 2010, 美东) : TABLE 1: : locationID name : 1 aaa : 1 bbb : 2 bbb : TABLE 2:
| n*****n 发帖数: 1029 | 3 Full Join.
http://www.w3schools.com/sql/sql_join_full.asp
【在 m******o 的大作中提到】 : 【 以下文字转载自 Database 讨论区 】 : 发信人: myyaoyao (幸福快乐地生活), 信区: Database : 标 题: 请问这个query怎么做 : 发信站: BBS 未名空间站 (Thu Jul 15 13:16:11 2010, 美东) : TABLE 1: : locationID name : 1 aaa : 1 bbb : 2 bbb : TABLE 2:
| g*s 发帖数: 2277 | 4 select temp2.locationid, IFNULL(table1.name,''),temp2.description from
(select locationid, name, description from (select distinct locationid from
table1) temp1 join table2 order by locationid,name) temp2
left join table1 on (temp2.locationid=table1.locationid and temp2.name=
table1.name);
【在 m******o 的大作中提到】 : 【 以下文字转载自 Database 讨论区 】 : 发信人: myyaoyao (幸福快乐地生活), 信区: Database : 标 题: 请问这个query怎么做 : 发信站: BBS 未名空间站 (Thu Jul 15 13:16:11 2010, 美东) : TABLE 1: : locationID name : 1 aaa : 1 bbb : 2 bbb : TABLE 2:
| m******o 发帖数: 61 | |
|