精华内容
下载资源
问答
  • SQL一对多查询

    千次阅读 2019-02-21 11:04:07
    SELECT A.ID,A.NAME,A.DATE,wm_concat(B.NUM) as no1  FROM 表1 A INNER JOIN 表2 B ON A.UUID=B.UUID group by A.ID,A.NAME,A.DATE  

    SELECT A.ID,A.NAME,A.DATE,wm_concat(B.NUM) as no1 
    FROM  表1 A
    INNER JOIN 表2 B
    ON A.UUID=B.UUID
    group by A.ID,A.NAME,A.DATE

     

    展开全文
  • sql 一对多查询分页

    千次阅读 2017-02-10 15:47:06
    sql 1对多查询(关联查询)时进行分页,以mysql举例

    原理:先对主表进行了分页查询,然后再进行关联查询(下面用mysql举例)


    重点部分是(select * from user limit 0,2) u ,其实这句就是对主表先进行了一次分页查询,并查出所有数据,那么接下来的关联查询,就会在这个主表查询出来的结果里进行了

    SELECT
    	u.id,
    	u.login_name,
    	u.remark,
    	r.id AS role_id,
    	r.role_name,
    	r.app_id,
    	r.web_page_ids,
    	r.remark AS roleRemark,
    	f.id AS function_id,
    	f.function_name,
    	f.function_icon,
    	f.url,
    	f.remark AS functionRemark
    FROM
    	(select * from user limit 0,2) u
    LEFT JOIN user_role ur ON u.id = ur.user_id
    LEFT JOIN role r ON ur.role_id = r.id
    LEFT JOIN user_function uf ON u.id = uf.user_id
    LEFT JOIN FUNCTION f ON uf.function_id = f.id

    下面这出一张效果图,只查询出了前面两个用户,而前面查出来的16条数据,都是属于用户1的。



    展开全文
  • SQL语句一对多查询

    千次阅读 2019-12-03 20:13:36
    表中我们可以发现一个科目会有多个老师教,如果我们直接进行表连接的话就会出现问题,这就牵扯到我们的一对多sql语句,从而让我们写一条sql语句就带到一对多的效果 sql语句一对多(spr_course和sys_user表) SELECT spr...

    效果如下

    在这里插入图片描述

    2个表

    spr_course
    在这里插入图片描述
    sys_user
    在这里插入图片描述
    表中我们可以发现一个科目会有多个老师教,如果我们直接进行表连接的话就会出现问题,这就牵扯到我们的一对多的sql语句,从而让我们写一条sql语句就带到一对多的效果

    sql语句一对多(spr_course和sys_user表)

    SELECT spr_course.*,GROUP_CONCAT(sys_user.`username`) AS createrName FROM spr_course
    JOIN sys_user ON 
    FIND_IN_SET(sys_user.`user_id`,spr_course.`cou_teach`)
    GROUP BY spr_course.`cou_couid`
    

    在这里插入图片描述
    我们在前端界面显示课程对应的老师的时候,只需要在entity层加一个createName字段,我们就可以查询到课程所对应的老师,
    总结:sql语句1对多, 本帖课程为1,老师为多

    展开全文
  • SQL一对多查询

    万次阅读 2019-03-19 11:03:31
    常见的业务中我们都会发现到订单就是一个非常显眼的“一对多”典例。 结构:一个大的订单可以有多个“小订单”(订单详情),每个“小订单”都对应有多个商品。 首先看下表结构: 订单表:(SYS_Order) 订单ID ...

    常见的业务中我们都会发现到订单就是一个非常显眼的“一对多”典例。
    结构:一个大的订单可以有多个“小订单”(订单详情),每个“小订单”都对应有多个商品。
    首先看下表结构:
    订单表:(SYS_Order)
    订单ID (OrderID) int
    订单名称 (OrderName)char
    订单日期(OrderDate)date

    订单详情表:(SYS_OrderDetaile)
    订单详情ID (OrderDetaileID) int
    订单ID (OrderID) int
    商品ID (GoodsID) int
    数量 (GoodsNumber)int

    商品表:(PW_Goods)
    商品ID (GoodsID) int
    商品名称 (GoodName) char

    查询某天之前的所有订单内容,包括订单名称、商品名称
    SQL代码

    select * from SYS_Order 
    Right Join SYS_OrderDetaile on SYS_Order.OrderID = SYS_OrderDetaile.OrderID
    Inner Join PW_Goods on SYS_OrderDetaile.GoodsID = PW_Goods.GoodsID 
    where SYS_Order.OrderDate <= GETDATE()
    

    右连接 运行结果截图:
    在这里插入图片描述
    上图中,用 right join 右连接 SYS_OrderDetaile表,这样连接是因为这两张表的关系:SYS_Order
    是SYS_OrderDetaile 的父表。所以要查出这个订单在SYS_OrderDetaile 中的所有子数据用了 right join ,所以这个订单的所有详情内容都通过 右连接 在子表中查询出来。
    我自己是这样记的:谁的数据多就连谁,上图中是订单详情的数据多,那么我就右连接它。

    当然用左连接(Left join )也是可以的查询的。代码如下:

    Select * from SYS_OrderDetaile 
    Left Join SYS_Order on SYS_OrderDetaile.OrderID = SYS_Order.OrderID 
    Inner Join PW_Goods on PW_Goods.GoodsID = SYS_OrderDetaile.GoodsID 
    where SYS_Order.OrderDate <= GETDATE()
    

    左连接 运行结果截图
    在这里插入图片描述
    因为连表先后顺序不一样,因为我用的是*(通配符),所字段显示顺序就不同了,在实际应用当中就可以按需求自己筛选这些数据了。

    展开全文
  • SQL一对多,子表关联查询

    千次阅读 2018-12-03 13:08:10
    SQL一对多,子表关联查询 两张表:主表A(合作伙伴),从表B(维修方式) 表关系:A:B-----1:N 表A: 只有一条 partner_id为A20181203120246889b15e990d72464a的合作伙伴 表B: 主从表关联字段:partner_id 目前从...
  • sql 一对多 子表多条件查询

    千次阅读 2017-06-19 13:56:42
    例子: 商品表:product 字段:rid(int) name(nvarchar)  rid name  1 a  2 b  3 c 商品属表 Proattr 字段rid(int) TypeID(int) rid TypeID 1 1 1 2 2 1 ...sql: select * from pr
  • sql查询一对多转化为一对一

    千次阅读 2016-11-03 11:04:20
    今天在做项目时,遇到了个问题,主表记录对应条副表记录,在查询主表的时候,想将副表对应的条记录一起随主表查询出来。  以前做的时候,都是先将副表根据主表的关联字段进行分组,然后通过函数进行组合合并...
  • 我现在有两张表 table1,table2,其中table1的字段(id,name),表table2的字段(id, ...需要查询出来 (name和status为0的总数)的集合该怎么写sql?status的值只有0或者1. table1的id和table2的table1_Id是主外键关联的。
  • SQL一对多查询 去重复

    千次阅读 2012-09-18 17:24:45
    select distinct t.d0010 as UUID, t.d0020 as cattlenum from T0010 t , T0050 t5 where t.d0010=t5.d...T0010.d0010 的数据对应T0050表的d0020 一对多 現在根据T0050表查询T0010表 的信息 最好加上order by t.
  • SQL查询一对多返回一条数据

    千次阅读 2019-01-18 18:11:22
    查询中product和product_img是一对多的关系(数据库是MySQL) select p.id, p.product_cost_price, p.product_trade_price, p.product_sale_price, p.collect_num, p2.collect_status, ...
  • sql语句查询一对一,一对多,多对多

    万次阅读 多人点赞 2015-12-07 20:16:09
     ... create user hncu identified by '1234' DROP DATABASE mydb2; //删除数据库 ...//查询(显示数据库) SHOW DATABASES; /*用Tab键补全代码,类似MyEclipse中的Alt+/ */ //创建数据库 并手动指
  • https://blog.csdn.net/xianzgiyou/article/details/50210431
  • case when then end:需求,2个表zx_special_ref_phase ()需要把1,2,3 转成对于的汉字 远程-面授-临床实践 并用“-”分隔符连接SELECT GROUP_CONCAT(temp.CODE SEPARATOR '-') as phase, t.* FROM zx_...
  • sql left join 一对多

    2018-09-26 08:22:32
    java 开发 现在遇到了一个问题 有一个主表 和子表 ,主表和子表示,一对多的。sql 为:select top 50 *,oc.id c_id,oc.salesman c_salesman,oc.cserver c_cserver from crm_operatlist ol left join crm_operatlist...
  • 我的电脑系统:Windows 10 64位 ...关系的分类(假设是A表和B表)第一种分类: 一对一 (详述一对一关系及其实现)(一对一,几乎不使用。所以,我们就一句话带过。) 一对一的实现:既可以把表A的主键充当表B的外键
  • 一对多带限制条件的SQL语句

    千次阅读 2017-12-14 15:44:05
    订单与订单明细一对多查询语句。 需求:查出每个有效订单中的可用订单明细中价格最高的那条订单明细。要求:显示订单号,订单名称,货物名称,货物价格(不为空) 说明:valid字段表示是否可用:0-不可用,1-可用 ...
  • 这个时候使用 GROUP_CONCAT 函数 ,将项目对应人信息合并成个字段  select GROUP_CONCAT(xxx SEPARATOR ',') from table_name group by xxx
  • SQL 条件查询

    万次阅读 2017-04-16 17:57:47
    网上有不少人提出过类似的问题:“看到有人写了WHERE 1=1这样的SQL,到底是...界面中列出了四个查询条件,包括按工号查询、按姓名查询、按年龄查询以及按工资查询,每个查询条件前都有个复选框,如果复选框被选中
  • 查询userName为abc或xyz的 以下为本菜鸟项目中遇到的问题: 背景: /**  * wangjie 180629  *   * 学生需要查询四种可能的消息  * 1.班级管理员发来的,根据自身的学籍号条件查询 * 2.省级管理员发送区县...
  • 通过对数据表进行主外键的设置,实现实体类之间一对一、一对多、多对多的等关系模型。以下是Main、Main_Ext、Children三个表, Main kid name value note         Main_Ext ...
  • SQL文实现,一对多数据合并

    千次阅读 2016-03-29 09:41:41
    段时间由于项目的需要,受个同事的启发写SQL文,觉的具有一定的代表性,所以把它记下来以供参考. 大意是有个部门表和个员工表,现在需要使用查询语句将部门信息以及该部门的所有员工列出来,个...
  • 上面有点绕,其实就是需要主从id匹配,然后取得从表和主表匹配的每组数据...上面是正常流程,但是就是在这里出现了问题,group by 函数分组查询出来的记录是默认给你把当前表order by 以后的第条记录 select * fro
  • 查询这样的记录时如果是简单的查询会出现查询结果,而业务上需要只显示为条记录。这是个难题,不过在也sql中也是可以解决的。示例:saleid为要查的字段,以valueid为条件,valueid存在个值,要使得查询...
  • SQL语句表联合查询

    万次阅读 2017-03-18 12:25:57
    本周之前,对于数据库的使用仅限于简单的增删改查(insert、delete、updata、select),而这周由于工作需要,一些sql函数、sql语句表联合查询、T-SQL语句基本语法、存储过程编写等有了简单的学习,现将周所...
  • 抽取逻辑就是在一对多关系表中,需要检索符合条件的多行中的一条记录。 DEMO如下: A表: B表: 具体的抽取的逻辑: 所有的A_name对应的 B_name中的第一个B_name记录。比如抽取 所有课程的第一位授课教师...
  • SQL查询之组合查询

    万次阅读 2016-05-23 14:56:48
    SQL允许执行查询(条SELECT语句),并将结果作为个结果集返回.这些组合查询成为并(union)或复合查询(compound query) 有两种情况需要使用组合查询: 在查询中从不同的表返回结构数据. 对一个表执行个...
  • 一对多关联导致数据发散的SQL优化经验

    千次阅读 多人点赞 2020-07-27 10:25:15
    而我在工作中写SQL经常遇见的一个问题就是一对多关联导致数据发散。因此,这篇文章,主要记录一对多关联导致数据发散的应对方案。 多表关联优化的例子 我之前写了一个SQL,运行了一个多小时,也没有运行出来。下面我...
  • sql一对多 多的一方按逗号隔开显示

    千次阅读 2014-09-24 15:29:09
    1、oracle函数 WMSYS.WM_CONCAT的使用 如图,将图1的结果变成图2的...查询语句需要配合使用group by select aa,wmsys.wm_concat(t1.name) from ( select t.name,to_char(t.createdate,'yyyy-mm-dd') aa from td_u

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,216,854
精华内容 486,741
关键字:

sql一对多查询