奇葩的数据库设计,逼得我不得不写这样的sql语句

编程入门 行业动态 更新时间:2024-10-10 11:21:36

<a href=https://www.elefans.com/category/jswz/34/1763457.html style=奇葩的数据库设计,逼得我不得不写这样的sql语句"/>

奇葩的数据库设计,逼得我不得不写这样的sql语句

一个项目的数据库设计很奇葩,用户信息表里有公司编号和角色编号,如果身兼多职,roleID就追加,用逗号分隔。。。。上传文件一律进file表,头像上传也不例外,然后,file表有个关联字段,保存所有者的编号。。。。

现在要取公司员工信息,用orm框架写太麻烦,就改用sql语句取,代码如下:

SELECT  p.xGUID      AS id ,p.Name       AS name ,p.Account    AS account ,p.Email      AS email ,p.Sex        As gender ,p.Mobile     As phone ,p.IsExpert   As isExpert ,p.ExpertArea As expertArea ,STUFF(( SELECT  ',' + r.Name FROM  UE_Organization r WHERE  p.RoleID like '%' + CAST(r.xGUID AS VARCHAR(50)) + '%' FOR  XML PATH('')),1,1,'') AS roleName ,(SELECT  TOP 1 f.Path FROM  UE_File f WHERE  f.LYBMID = p.xGUID AND  f.ScenesType = N'头像' ORDER BY  CreateTime DESC) AS photo FROM  UE_Person       p JOIN  UE_Organization c ON  p.CompanyID     = c.xGUID WHERE  c.xGUID         = @cid;

虽然奇葩,但里面有几个知识点,以后可能会用到,所以先记录下来,以备后用

更多推荐

奇葩的数据库设计,逼得我不得不写这样的sql语句

本文发布于:2024-02-13 23:53:39,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1760796.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:奇葩   逼得   语句   数据库   我不得不

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!