请问SQL查询 两个表联合查询怎么写

A表id姓名1tim2bobB表idminnummaxnum1101212030当tim的一个数<minmum或>maxnum时,输出一条记录如果这个条件同时满足B表的2... A表
id 姓名
1 tim
2 bob

B 表
id minnum maxnum
1 10 12
1 20 30

当tim的一个数 <minmum 或 >maxnum 时,输出一条记录
如果这个条件同时满足B表的2条记录时,只输出一条
我用inner join 当条件数值为40时,会输出2行tim
展开
 我来答
山山小羊不吃草
高粉答主

2018-04-26 · 关注我不会让你失望
知道大有可为答主
回答量:297
采纳率:100%
帮助的人:58.4万
展开全部

如下方法:

select top 1 a.姓名 , b.minnum , b.maxnum from a INNER JOIN b ON a.id = b.id where b.minnum > 40 or b.maxnum < 40。

1、SQL的解释:结构化查询语言(英文简称:SQL)是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同 数据库系统,,可以使用相同的结构化查询语言作为数据输入与管理的接口。

2、SQL的语句结构:其语句,也称为“数据检索 语句”,用以从表中获得数据,确定数据怎样在应用程序给出。保留字 SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDER BY,GROUP BY和HAVING。这些DQL保留字常与其他类型的SQL语句一起使用。

爱琴海之玲
2014-08-04 · TA获得超过2581个赞
知道小有建树答主
回答量:582
采纳率:75%
帮助的人:339万
展开全部
select top 1 a.姓名 , b.minnum , b.maxnum from a INNER JOIN b ON a.id = b.id where b.minnum > 40 or b.maxnum < 40
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mieyoubeizhuce
2014-08-03 · TA获得超过610个赞
知道小有建树答主
回答量:733
采纳率:100%
帮助的人:474万
展开全部
说清楚点,什么意思没搞懂
追问
select a.姓名 , b.minnum , b.maxnum from a INNER JOIN b ON a.id = b.id where b.minnum > 40 or b.maxnum < 40

这样得到的表会是
tim 10 20
tim 20 30

我希望只得到其中一条就可以了
追答

按照你SQL语句的逻辑,确实是输出2条记录,这2条记录都符合条件,

你只想输出一条记录,2中方法:

  1. WHERE后加条件,再筛选一下



  2. select top 1 a.姓名 , b.minnum , b.maxnum from a INNER JOIN b ON a.id = b.id where b.minnum > 40 or b.maxnum < 40
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式