草庐IT

mysql - 多个表上的 SQL 查询、AVG 和 COUNT

我需要一个查询,我使用的查询由于某种原因不能按我想要的方式工作这里是查询涉及的所有表。这是我想要的查询:显示带有平均评分和推荐数量的图书列表结果应该是这样的:我已经尝试过的:SELECTbook.isbn,AVG(ratings.rating)AS[AVGRatings],COUNT(recommend.isbn)AS[Numberofrecommendation]FROMbookINNERJOINrecommendONbook.isbn=recommend.isbnINNERJOINratingsONbook.isbn=ratings.isbnGROUPBYbook.isbn但它没有

mysql - SQL 在每个 SELECT 请求中获取 ROW_NUMBER 和 COUNT

我正在构建一个网格机制,我需要从数据库中检索数据(总计或找到的记录),只检索这些记录的范围,其中包含一个row_number。我使用SqlServer进行测试,但我也需要在Oracle和MySql上支持它。这就是我正在尝试的,但我无法让它工作:SELECT*FROM(SELECTROW_NUMBER()ASRN,COUNT(*)ASTOTALCN,Id,Name,PhoneFROMMyTableWHEREDeleted='F')WHERERN>100ANDRN思路是:MyTable->numberofrecords:1000SelectId,Name,PhonefromMyTablew

php - Eloquent 查询 - 多列上的 COUNT 和 SUM

我正在尝试使用从这个问题中获得的知识questionalreadyanswered在我的数据透视表中user_attitudes我有两列:重要性(用户声明他们的兴趣(0,3))态度(基本上这个是用于赞成票和反对票,值是'-1','0'和'1')我现在拥有的:我可以打印按selectRaw创建的值排序的实体列表。我需要什么:我希望打印下面描述的所有四个不同的值,不管哪个用于排序我想用AJAX创建几个排序开关,以便用户可以更改排序。对于每个我需要输出最多四个计数:总重要性得分:SUM(user_attitudes.importance)ASimportance显示有多少用户正在观察实体:C

mysql - 如果 COUNT(*) > X 则分组,否则不分组

我试图从我的数据库中返回map项目列表,仅当组数大于4时才对项目进行分组,否则我不希望对项目进行分组。我的项目旨在返回设定区域内的所有条目,我将使用分组将该区域分解为网格。如果网格中的每个单元格都有太多结果,那么我将显示一个带有组计数的组标记,而不是单个条目标记。我当前的查询用于确定是否有按COUNT(*)分组的项目SELECT*,COUNT(*)asgroupCount,floor(longitude/0.0007)ASgroupLong,floor(latitude/0.0007)ASgroupLatFROMitemsWHERElongitude>=151.1ANDlongitud

php - 我如何对多个 mysql foreach 数组进行排序并需要它们在 php 中保持一致?

我正在尝试根据我的计算值对mysql数据进行排序。我知道rsort()、sort(),但是,我无法在foreach之外对它们进行单独排序,因为它不会保持一致。当我只想按百分比对它们进行排序时,我有三个数组需要保持一致。我怎样才能做到这一点?欣赏。$user_avatar[$i]$combine_count[$i]";}?> 最佳答案 保持三个数组之间联系的一种方法是使用关联数组。如果成员id是唯一的,则将其用于每个数组的索引。例如:$c_count){echo"$user_avatar[$member_id]$combine_cou

mysql - 如何将小计添加到 MySQL 中的表中?

假设我的表格如下所示:idcountsub_total110NULL215NULL310NULL425NULL我怎样才能将此表更新为如下所示?idcountsub_total11010215253103542560我可以在应用层很容易地做到这一点。但我想学习如何在MySQL中做到这一点。我一直在尝试使用SUM(CASEWHEN...和其他分组进行多种变体,但均无济于事。 最佳答案 如果您的id字段是连续的并且在增长,那么相关子查询是一种方式:select*,(selectsum(count)fromtwheret.id或作为连接:s

mysql - SQL Group By 和两列计数

我有一个MySQL表,其中的数据为:-country|city---------------italy|milanitaly|romeitaly|romeireland|corkuk|londonireland|cork我想查询这个并按国家和城市分组,并且有城市和国家的计数,如下所示:-country|city|city_count|country_count---------------------------------------------ireland|cork|2|2italy|milan|1|3italy|rome|2|3uk|london|1|1我能做到:-SELECT

php - 如何在两列中不重复计数?

我有table:+----------------+|table|+----------------+|u_id|sail_id|+----------------+|1|5||1|5||2|5||2|4||1|4|+----------------+如何写sql语句统计不同的u_id和不同的sail_id(表示不重复)?例子:如果SELECTCOUNT(*)FROMtableGROUPBYsail_id,结果将为2如果SELECTCOUNT(*)FROMtableGROUPBYsail_id,user_id,结果将为1我需要结果为4(因为有5行,只有第一行和第二行具有相同的u_id和

mysql - 使用连接信息计数

我有两个表。一张表记录了订单库存,有FK_stock和FK_orderNo我想统计每个库存商品的订单数量。以下代码可以正确地执行此操作:(1)SELECTorderstock.FK_orderNo,Count(orderstock.FK_stock)ASCountOfFK_stockFROMstockINNERJOINorderstockONstock.StockID=orderstock.FK_stockGROUPBYorderdemo.FK_orderNo但是,我想补充一点,只列出不易腐烂的库存元素(stock.perishable=0)。所以像SELECTorderstock.F

php - MySQL:每个日期的组事件

我想这是一个反复出现的问题,但我还没有找到合适的主题来指引我正确的方向。我有一个聊天表,它看起来很像:+---------+----------------+---------------------+-----------------+|id(int)|author(string)|date(datetime)|message(string)|+---------+----------------+---------------------+-----------------+|1|John|2016-01-0117:18:00|I||2|Mary|2016-01-0114:22:0