草庐IT

分组会

全部标签

MySQL 对多列至少共享一个值的行进行分组

考虑下表:CREATETABLE`customer_identifiers`(`id`int(11)NOTNULLAUTO_INCREMENT,`order_id`varchar(45)DEFAULTNULL,`email`varchar(45)DEFAULTNULL,`phone`varchar(45)DEFAULTNULL,`created_at`timestampNULLDEFAULTCURRENT_TIMESTAMP,`updated_at`timestampNULLDEFAULTCURRENT_TIMESTAMPONUPDATECURRENT_TIMESTAMP,PRIMAR

mysql - 如何按自定义定义的一周对记录进行分组?

我正在尝试用SQL编写一份将在MySQL中运行的报告。我有一个公司表:INSERTINTOcompanies(`id`,`name`,`createdDate`)VALUES(1,'company_1','2016-02-0104:00:00'),(2,'company_2','2016-01-0104:00:00'),(3,'company_3','2016-04-0104:00:00'),(4,'company_4','2016-03-0104:00:00'),(5,'company_5','2016-02-0104:00:00');我有一个users表,其中一群用户在一个公司对许

sql - MySQL 语法按餐厅分组,菜单更便宜

这是我对MySQL(MySQL:5.0.51a)的SQL请求。我想要一份包含他更便宜菜单的餐厅列表:selectr.id,rm.id,rm.price,moyenneasnote,get_distance_metres('47.2412254','6.0255656',map_lat,map_lon)ASdistancefromrestaurant_restaurantrLEFTJOINrestaurant_menurmONr.id=rm.restaurant_idwherer.isVisible=1groupbyr.idhavingdistance如果我不使用groupby,我有一个

sql - MySQL - 获取多个分组行的摘要?

2个表:所有者和汽车一个车主可以拥有多辆汽车。汽车可以标记为usable_offroad、usable_onroad或两者。cars表有usableoffroad和usable_onroad字段,可以设置为0或1(no或yes)考虑以下查询:SELECT*FROMownersLEFTJOINcarsoncars.owner_id=owners.idGROUPBYowners.idORDERBYowners.last_name我的目标是返回车主列表,以及每个车主是否拥有公路车或buggy,或两者兼而有之:LastNameFirstNameHasOffroadCarHasOnroadCar

mysql - 如何对非常大的数据集的结果集进行分组、存储和过滤

抱歉,问题标题有些含糊,所以这是一个有效的例子。我有一个表,每个用户(userid)每隔几天都会在其中获取一个值。我想找到每个用户的最后一个值,按月分割,并将他们的数量计入一个范围。这是一个示例表和代表性数据:CREATETABLE`datasource`(`id`INTUNSIGNEDNOTNULLAUTO_INCREMENTPRIMARYKEY,`userId`INTUNSIGNEDNOTNULL,`unixts`INTUNSIGNEDNOTNULL,`value`INTUNSIGNEDNOTNULL,INDEX(`userId`));INSERTINTO`datasource`(

MySQL按某种类型分组并选择最新的行?

想象一个包含列类型、日期、消息的表格。有些行看起来像这样(类型|日期|消息):1|1310572318|Hello1|1310572317|Hi2|1310572315|Wassup3|1310572312|Yo3|1310572311|Hey3|1310572309|Eyo1|1310572305|Hello1|1310572303|GoodDay是否可以按类型对它们进行分组,并选择最新的(按日期排序)以便结果为:1|1310572318|Hello2|1310572315|Wassup3|1310572312|Yo1|1310572305|Hello我很确定我必须使用一些MySQL

MySQL 按具有多个连接的日期范围分组

我目前有一个相当困惑的查询,它连接来自涉及两个子查询的多个表的数据。我现在需要按DAY()、WEEK()、MONTH()和QUARTER()对这些数据进行分组。我有三个表:days、qos和employees。一个employee是不言自明的,一个day是一个员工在某一天的表现总结,而qos是一个随机质量检查,每天可以执行多次。此刻,我正在选择所有employees,并且LEFTJOINingday和qos,这效果很好。但是,现在,我需要对数据进行分组,以便分割团队或个人在某个日期范围内的表现。获取这些数据:员工id|name------------------1|BobSmith日i

php - MySQL/PHP 按天分组

我有一个按天对所有记录进行分组的查询。$query=mysql_query("SELECTDATE_FORMAT(date,'%d/%m/%Y')ASday,COUNT(id)AStotalFROMinvoicesGROUPBYday");我是怎么做到它整天显示给我的,即使没有记录,直到今天奥梅里穆尼 最佳答案 我认为最好只获取表中的所有记录,按日期排序并使用PHP填补空白。很难在MySQL中生成日期序列。您经常会看到带有存储过程和临时表的解决方案,例如here.在PHP中,创建一个遍历每个日期直到今天的循环。在循环中,您可以检查每

mysql - 按字段中的子字符串分组

我有一个城市表,其中有城市名称,例如“洛杉矶(加利福尼亚)”。我试图通过请求提取括号之间包含的所有值,但我无法很好地完成...我试过的请求是这样的:SELECTcitynameFROMcitiesWHEREcitynameLIKE"%(%)%"GROUPBYSUBSTR(cityname,FIND_IN_SET(cityname,'('))或者类似的东西(没有分组依据):SELECTSUBSTR(cityname,FIND_IN_SET(cityname,'('))FROMcitiesWHEREcitynameLIKE"%(%)%"这些请求似乎有什么问题?

mysql - 按周分组并选择本周的记录

我一直在尝试使用MySQL显示每周销售的结果表,其中一周的结果应该是这样的:Sun-Mon-Tues-Wed-Thur-Fri-Sat所以我继续使用这个查询:SELECTDATE_FORMAT(cart_calendar.datefield,'%d-%b')ASDATE,IFNULL(SUM(cart_daily_sales.quantity),0)AStotal_salesFROMcart_daily_salesRIGHTJOINcart_calendarON(DATE(cart_daily_sales.order_date)=cart_calendar.datefield)WHER