草庐IT

Mysql每个月的最小值和最大值以及对应的 "date"

我有一个名为“rates”的表,它有两个字段“date”和“rate”。我喜欢获取每个月的MIN和MAX汇率值及其发生日期。但我做不到。SELECTdate,MIN(rate)ASminRate,MAX(rate)ASmaxRate,MONTH(date)ASmonthName,YEAR(date)ASyearNameFROMratesGROUPBYyearNameASC,monthNameASC澄清:我喜欢得到这样的东西:MonthsMINmindateMAXmaxdateJan1.2342012-01-131.5342012-01-24Feb1.1652012-02-281.373

MySQL获取日期大于8个月的记录

如何从MySQL数据库中获取“Last_updated”大于“8个月”或(“日期为空”)且(“Number_of_employees”小于等于500)的记录?表格详细信息:CREATETABLE`companies`(`company_id`int(11)NOTNULLAUTO_INCREMENT,`company_name`varchar(255)NOTNULLCOMMENT,`Number_of_employees`int(11)NOTNULL,`Last_updated`datetimeNOTNULL,PRIMARYKEY(`company_id`),UNIQUEKEY`Comp

php - 如何按月份和用户名对每个月的总行求和

我有每个月的销售记录表。在这种情况下,每个销售人员都有自己的代码bd和nk。MySQLselectsale_plc,month(sale_date)asmon,sum(sale_cost)ascostfromdaily_saleswhereyear(sale_date)='2016'groupbyyear(sale_date),month(sale_date),sale_plcorderbymonth(sale_date),sale_plcascLIMIT0,30查询后我得到了这个结果:idmoncostbd1224787nk1721102bd2440399nk2898020bd336

mysql - 选择在同一个月内从两个特定类别中至少购买了一个的客户数

我正在尝试编写一个查询来计算在2014年的同一个月内至少从order_type=0和一个order_type=1购买了一个的客户我有两张table。order表有:订单编号客户编号收购日期orders_category表:订单编号order_type(订单的类型可能有0,1,2,3,5,8...等)我试过这个查询,但它没有用,我知道它不完整,我错过了月份条件!Selectcount(user_id)Fromorderjoinorders_categoryonorder.order_id=orders_category.order_idWhere(order_type=0ororder_

mysql - 每 6 个月在一条记录中分组

我无法通过这样的SELECT查询从数据库中检索某些数据:SELECTtable.somethingFROMtableWHEREtable.dateBETWEEN'from'AND'to'GROUPBY(each6monthsbetweenthefromandtodate).想知道如何做到这一点,而不必通过代码重新访问View和外部分组。 最佳答案 像这样的东西会起作用:SELECTtable.something,CEIL(MONTH(date)/6)asmonthVALUEFROMtableWHEREtable.dateBETWEE

mysql - sql为每个月选择一条记录,其中包含该月记录的总和

我有一个包含“约会表”和“服务表”的数据库。每个appt都有一个服务,每个服务都有一个价格。我想要的是一个查询,它将始终返回12行(每个月一行)并包含月份appts的总和(基于它的服务ID)。到目前为止,我有:selectsum(service_price)asmonthly_total,year(appt_date_time)asyear,monthname(appt_date_time)asmonthfromappt_tbljoinservices_tblonappt_tbl.service_id=services_tbl.service_idgroupbymonth(appt_d

mysql - 在 mysql 中选择当前日期和当前日期后 3 个月之间的日期

我想选择当前日期和3个月前的所有日期。我尝试使用此查询,但它无法正常工作。$sql=mysql_query("SELECT*FROMdateWHEREd_dateBETWEENNOW()ANDNOW()-INTERVAL3MONTH");请帮我写出正确的语法。 最佳答案 你需要交换你的边界,它会起作用:SELECT*FROMdateWHEREd_dateBETWEENnow()-INTERVAL3MONTHANDnow()例如,此查询返回true(SQLFiddle):SELECT(now()-interval1month)BETW

mysql - 按月对 MySQL 行进行分组并统计数据直到每个月

我有一个名为“results”的表,其中有很多行和一个名为“timestamp”的列。我想对每个月的行数进行分组。但对于其中的每一个,我还想考虑前几个月的行。如果我有Jun/13Jun/13Jun/13Jul/13Jul/13Jul/13Jul/13Jul/13Aug/13Aug/13Aug/13Aug/13Aug/13Aug/13Aug/13结果会是3Jun/138Jul/1315Aug/13这是我现在拥有的,但没有考虑前几个月。SELECTDATE_FORMAT(FROM_UNIXTIME(timestamp),'%e%b%Y'),COUNT(1)FROMresultsGROUPB

MySql查询脚本统计每个月的活跃用户数

我需要查询Mysql以查找日期范围内每个月的活跃用户数。活跃用户是指本月和前一个月(两个月不止一个)有登录日志记录的用户。这里是表格和测试数据的脚本。CREATETABLE`logger`(`id`INTEGERNULLAUTO_INCREMENTDEFAULTNULL,`UserId`INTEGERNULLDEFAULTNULL,`loginDate`DATENULLDEFAULTNULL,PRIMARYKEY(`id`));INSERTINTO`logger`(`UserId`,`loginDate`)VALUES('1001','20151109'),('1002','20151

mysql - 最近 n 个月未登录的用户

我想删除在给定时间段内未登录的用户,但我稍后会根据结果选择时间段。所以我需要报告,其中我将收到过去1个月、2个月......n个月内未登录的用户数量。我不太清楚如何在单个mysql查询中实现移动周期。提取给定时间段内的这些用户很容易:SELECTcount(distinctid)fromtmp_last_loginWHERElast_login但是n个月这样的报告是如何实现的呢?预期结果:**interval****cnt**1xxx2xxx3xxx4xxx5xxx...xxxnxxx 最佳答案 以下查询将返回10个月后间隔内每个月