请教一个MSSQL查询语句的问题
在3个表中查询,如何有几条相同的记录,如何查询后只返回一条记录呢?
from 住院病人描述表 inner join 住院信息表 on 住院病人描述表.fname=住院信息表.fname inner join 住院登记表 on 住院信息表.fkeyid=住院登记表.fregistid
这上面的fkey和fregistid 应该为如果有多条相同的数据,但只要求显示一条数据
补充:麻烦吧 最后 修改的语句 发上
注意不只是一条数据 是N多条 其中还包括其他的数据
答案:from 住院病人描述表 inner join 住院信息表 on 住院病人描述表.fname=住院信息表.fname inner join (Select fregistid From 住院登记表 Group By fregistid) C on 住院信息表.fkeyid=C.fregistid
其他:where 条件加上 select top 1 FROM(表1 inner join 表2 on 表1.字段号=表2.字段号)inner join 表3 on 表1.字段号=表3.字段号
下边是查询不重复name段的值和time值
也就是如果有多个重复的name 只取一个。
select distinct(name),min(time) as time from table group by name
自己组合一下吧 试试吧 我也不怎么会,只好提供一下想法啦 select max(住院登记表), 描述, 信息,登记
from 住院病人描述表
inner join 住院信息表 on 住院病人描述表.fname = 住院信息表.fname
inner join 住院登记表 on 住院信息表.fkeyid = 住院登记表.fregistid
group by 描述, 信息,登记
登记就有登记日期吧
按照这个sql ,字段自己改一下就好了 吧 max(住院登记表), 后面的字段 都写到group by 就可以用了
上一个:MSSQL 2005 由于目标机器积极拒绝,无法连接
下一个:(60分)SQL查询语句 access的能用,那MsSql应该怎么写?