【mysql联查中使用if和group by会让你的结果不是你想要的】教程文章相关的互联网学习教程文章

mysql – 数据库:如果任何行中的字段X的值为Y,则排除’group by’组【代码】

我正在使用MySQL. (我正在剥离不相关的连接以保持这一点更清晰) 我正在尝试选择公司的地址,按company_id进行分组,但如果他们在特定国家/地区拥有任何地址(ID为242),则排除整个用户 所以我尝试的第一个查询是:SELECT c.company_id FROM companies c NATURAL JOIN addresses a WHERE a.country_id != 15 GROUP BY c.company_id根据我的理解,这首先选择select,然后排除country_id为15的行,然后返回其余行的company_id,这些行是不同的...

MySQL – GROUP_CONCAT()与连接表 – 意外结果【代码】

我有两张桌子 – 一张描述你可以购买的物品,一张储存“必需物品”以购买其他物品.第一个表中有一些项目需要其他项目作为交易形式.有时您需要一定数量的所需物品.这是两个表的模式:+---------------+-----------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +---------------+-----------------+------+-----+---------+----------------+ | st...

php – GROUP BY mysql只显示一行.但是也想要重复【代码】

我的表结构是id order_id location time date1 951 x 2/03/20132 951 x 13:00 2/03/20133 951 y 3/03/2013我想在php中显示这些与日期类似的东西Date 2/03/2013 Orderid 951 location x Orderid 951 location xDate 3/03/2013 Orderid 951 location ymysql查询我正在执行的是select * from table where order_id=951 GROUP BY date ORDER BY id ASC但是此查询仅返...

php – Mysql GROUP BY概述投票系统【代码】

我希望user_id 2概述其他用户在其帐户中执行的最后一个操作 >投票>投票否决>确认>不肯定 每次用户执行操作时,在右列中添加一行1.空白元素填充0. user是投票人,user_id是投票的人| id | user | user_id | up | down | confirm | unconfirm | date | +----+------+---------+----+------+---------+-----------+------------+ | 1 | 1 | 2 | 1 | | | | 2014-11-03 | | 2 | 1 | 2 ...

php – 如何在mysql中为datetime字段编写Group By查询【代码】

我需要在没有时间的情况下从表格中的datetime字段开始按日期分组.我可以做什么朋友? 这里我的表字段是,我的Mysql查询是,select *,count(ord_number) as ord from tbl_order_details inner join tbl_users on tbl_users.user_id=tbl_order_details.user_id where 1=1 group by ord_date order by ord asc解决方法:你可以通过DATE()来做到这一点 示例 – group by DATE(ord_date)试试这个select *,count(ord_number) as ord from t...

版本5.7.19,5.7.21中找不到MySQL Group Replication插件【代码】

我试图在MySQL 5.7.21上启用MySQL组复制插件,根据文档(https://dev.mysql.com/doc/refman/5.7/en/group-replication.html)应该在5.7中提供$mysql --version mysql Ver 14.14 Distrib 5.7.21, for Linux (x86_64) using EditLine wrapper当我尝试通过MySQL启用插件时:$mysql> INSTALL PLUGIN group_replication SONAME 'group_replication.so'; ERROR 1126 (HY000): Can't open shared library '/usr/lib/mysql/plugin/group_rep...

mysql – 使用Group By从两个表中减去两列【代码】

我有4张桌子.CREATE TABLE Branch(ID INT,Name VARCHAR(50) );INSERT INTO Branch VALUES (1,'A'), (2,'B');CREATE TABLE Product(ID INT,Name VARCHAR(50) );INSERT INTO Product VALUES (1,'X'), (2,'Y');CREATE TABLE StockIn(ID INT,ProductId INT,Quantity INT,BranchId INT );INSERT INTO StockIn VALUES (1,1,10,1), (2,1,20,1), (3,1,50,2), (4,1,10,2);CREATE TABLE StockOut(ID INT,ProductId INT,Quantity INT,Branc...

MySQL GROUP BY性能问题【代码】

这是我正在执行的查询(没有一些不相关的联接):SELECT a.*, c.id FROM a LEFT OUTER JOIN b ON a.id = b.id_anunciante LEFT OUTER JOIN c ON c.id = b.id_rubro GROUP BY a.id每行“a”与“b”中的1到5行链接. 问题是GROUP BY存在性能问题(使用GROUP BY需要10倍或更多而不是使用它).我需要在“a”中只检索每个成员的一行. 我怎样才能让它更快? 编辑:我需要能够通过a.id和/或c.id进行过滤.我应该得到的结果集是“a”的每个“有效...

在MySQL中的空连接上的group_concat【代码】

我有以下问题:我有两张桌子:(简化)+--------+ +-----------+ | User | | Role | +--------+ +-----------+ | ID<PK> | | ID <PK> | +--------+ | Name |+-----------+和M:他们之间的关系+-------------+ | User_Role | +-------------+ | User<FK> | | Role<FK> | +-------------+我需要创建一个视图,它选择我:User,并在一列中,选择他的所有角色(这是由group_concat完成的). 我试过...

mysql – SQL查询中MAX()和`group by`的问题【代码】

我正在编写一个特别麻烦的查询.归结为: 我获得了一个结构表:pid | tid | points经过一个非常大的查询. 为便于说明: > pid =问题ID> tid =团队ID> points =针对该问题授予该团队的积分. 我想找到为特定pid获得最高分的球队. 我的问题是双重的: >如果这是一个名为teampoints的简单表格,我如何获得每个pid具有MAX(点数)的tid?我用pid尝试了来自teampoints group的SELECT pid,tid,MAX(points);但可以理解,那是行不通的>经过一次相...

MySQL文件在GROUP BY YEAR和Month上【代码】

我有一个大表,存储我的Web应用程序的调试信息.问题是该表现在是500,000行,其中一个查询很慢,因为没有使用索引. SQL:EXPLAIN SELECT count(*) AS `count`, month(event_date) AS `month`, year(event_date) AS `year`FROM events WHERE 1 = 1 GROUP BY year(event_date) DESC, month(event_date) DESC LIMIT 6;结果:SIMPLE events index NULL event_date 8 NULL 139358 Using index; Using temporary; Using file s...

MySQL查询GROUP_CONCAT多行【代码】

我从通用问题/答案数据中获取名称和地址数据,以创建某种规范化的报告数据库. 我得到的查询使用group_concat,适用于各个问题集,但不适用于多个集合. 我试图通过仅使用forename和surname以及仅3条记录来简化我正在做的事情,2个用于1个人,1个用于另一个.实际上,虽然有超过300,000条记录. qs.Id = 1的结果为Example.QuestionSetId Forename Surname -------------------------------------------------------1 Bob ...

Mysql 的concat、concat_ws()以及group_concat()的用法与区别

一、concat()函数 1、mysql的Concat函数可以连接一个或多个字符串 select concat(10);//10 select concat(11,22,33);//112233 但是Oracle的concat函数只能连接两个字符串,不能多也不能少 select concat(11,22) from dual; 2、mysql的Concat函数再连接字符串的时候,只要其中一个是null,南无返回就是null select concat(11,22,null);//null 而Oracle的concat函数连接的时候,只要有一个字符串不是NULL,就不会返回NULL select co...

mysql – 如何GROUP BY连续数据(在这种情况下为日期)【代码】

我有一个产品表和一个销售表,记录每个日期期间给定产品的销售数量.当然,并非所有产品每天都有销售. 我需要生成一份报告,告诉我产品连续销售的天数(从最近的日期到过去)以及仅在这些日期销售的商品数量. 我想告诉你到目前为止我尝试了多少事情,但唯一成功的(和缓慢的,递归的)是我的应用程序内部的解决方案而不是SQL内部,这就是我想要的. 我也曾经在SO上浏览了几个类似的问题,但我还没有找到一个可以让我清楚地了解我真正需要的问题....

mysql – 是否可以使用来自另一列的重复文本信息创建group_id【代码】

假设我们有这样的表id | group_id | TEXT | -------------------------------------- 1 | | NBA -------------------------------------- 2 | | NHL -------------------------------------- 3 | | NBA -------------------------------------- 4 | | NHL -------------------------------------- 5 ...