遇到一个问题,要用到mysql语句: 根据A表中,符合要求的ID值,去B表中搜索ID值相同的数据。
A表中有Id、title、director、lgid这几个值,B表中有Id,url等值。需要满足在A表中,Id是F开头、director为空、lgid为2的,将符合要求的...
A表中有Id、title、director、lgid这几个值,B表中有Id,url等值。
需要满足在A表中,Id是F开头、director为空、lgid为2的,将符合要求的所有数据的ID值取出来;然后以这些ID值去B表中搜索,得出这些ID值在B表中对应的URL值。
不知道能不能够看明白,如果不明白的,麻烦继续提出。
另外,能否解释下语句为什么这样写。 展开
需要满足在A表中,Id是F开头、director为空、lgid为2的,将符合要求的所有数据的ID值取出来;然后以这些ID值去B表中搜索,得出这些ID值在B表中对应的URL值。
不知道能不能够看明白,如果不明白的,麻烦继续提出。
另外,能否解释下语句为什么这样写。 展开
3个回答
展开全部
select id,url from b INNER JOIN a
using(id) where id like 'F%' AND director IS NULL and lgid=2;
INNER JOIN可取得两个表基于相同id的记录,也便于后面用where设置限定条件;
director为空假定你指的是null,如果不是null,则可将
director IS NULL 改为director=''
using(id) where id like 'F%' AND director IS NULL and lgid=2;
INNER JOIN可取得两个表基于相同id的记录,也便于后面用where设置限定条件;
director为空假定你指的是null,如果不是null,则可将
director IS NULL 改为director=''
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select url from B where id in
(select id from A where lgid = 2 and id like 'F%' and director is null)
语句是这样的,你不懂哪里就说吧
更多追问追答
追问
这样列出url的时候,会把对应的ID也列出来吗?
还是只有一列url?
追答
只有一列url
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
大概是这样,细节没涉及:
select A.col1, A.col2, B.Col1, B.col2...
from A left join B
on B.Id = A.Id
where A.xxx = xxx各种条件
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |