SQL数据库一对多关系如何取出多条数据? 10
现在有两张表,表一是users(用户表)表二是works(作品表)一个用户可以有多个作品,查询后显示结果如下,请问怎么查询?...
现在有两张表,表一是users(用户表)表二是works(作品表)一个用户可以有多个作品,查询后显示结果如下,请问怎么查询?
展开
4个回答
推荐于2017-08-01
展开全部
直接在SQL中是没法这么个结构出来的,需要配合编程语言实现
1、先查询出用户列表,然后循环用户列表,再根据用户跟作品表的关联查询到每个用户的作品信息
2、分别查询出用户表和作品表中的所有数据,再根据用户和作品的关联字段进行数据的组合
1、先查询出用户列表,然后循环用户列表,再根据用户跟作品表的关联查询到每个用户的作品信息
2、分别查询出用户表和作品表中的所有数据,再根据用户和作品的关联字段进行数据的组合
展开全部
SELECT * FROM
(SELECT
--t.ID,
t.BigClass,
t.Num,
t.SmallClass,
t.[Content],
t.IsQuantization,
--t.DeptId,
--t.TargetValue,
--t.MinValue,
--t.StriveValue,
--t.Score,
--t.BelongToPeriod,
--t.QuantizationType,
--t.IndicatorSepDept,
--t.F_CreateDate,
--t.[Status]
dzir.*
,row=ROW_NUMBER() OVER(PARTITION BY t.ID ORDER BY dzir.CreateTime desc)
FROM
DK_ZB_DeptIndicator AS t
RIGHT JOIN
DK_ZB_IndicatorReport AS dzir ON dzir.IndicatorsID = t.ID) AS t WHERE t.row = 1
DK_ZB_DeptIndicator 对应你的 user 表
DK_ZB_IndicatorReport 对应你的 作品表
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不是很明白你具体需要做什么,哪里有一对多的关系,取出什么样的数据?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select * from user left join works on users.id = works.userid group by users.姓名
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询