草庐IT

grouped_collection_select

全部标签

mysql - 为什么使用 GROUP BY 的 SQL 查询会产生更多的行?

我有下表:+------+-------+--------------------------------------+|id|rev|content|+------+-------+--------------------------------------+|1|1|...||2|1|...||1|2|...||1|3|...|+------+-------+--------------------------------------+当我运行以下查询时:SELECTid,MAX(rev)maxrev,contentFROMYourTableGROUPBYid;我得到:+-----

php - SELECT QUERY LIKE 仅包含字符串中的特定单词

我有一张如下表,表名是js_skills_achievementsidskill1skill2skill3skill41javaphphtmlandroid2phpjavajqueryhtml3sqlphphtmljquery当管理员搜索关键字是“nersupalli中的java开发人员”时我的查询在下面SELECT*FROM`js_skills_achievements`WHERE`skill1`LIKE'%javadeveloperinnersupalli%'OR`skill2`LIKE'%javadeveloperinnersupalli%'OR`skill3`LIKE'%jav

mysql - UNION vs GROUP BY 或更好的解决方案

我有这样一种情况,我在数据库表中有数十万行,假设有8列,其中前两列索引(每列两个索引,两列一个复合索引),我有两个带有groupby和union的SQL查询:SELECTMIN(columnOne),columnTwoFROMMyTableWHEREcolumnTwoIN(1,2,3)GROUPBYcolumnTwo和SELECTMIN(columnOne),columnTwoFROMMyTableWHEREcolumnTwo=1UNIONSELECTMIN(columnOne),columnTwoFROMMyTableWHEREcolumnTwo=2UNIONSELECTMIN(co

mysql - SQL Group_concat 未获取所有数据

我有2张表和第二张表的使用关系table1idname---------1alpha2betatable2idnamerelation-------------------120152220162320172420182我想看看namedata-------------------------beta2015,2016,2017,2018alphaNULL我尝试了以下sql查询,但输出不是我想要的我使用:SELECTt1.name,GROUP_CONCAT(t2.nameSEPARATOR',')FROMtable1ASt1LEFTJOINtable2ASt2ONt2.relation

MySQL 错误代码 : #1111 - Invalid use of group function

这个问题在这里已经有了答案:ERROR1111(HY000):Invaliduseofgroupfunction(1个回答)关闭5年前。我正在尝试编写一个mysql查询来选择至少两个或多个相同的用户订阅。这是查询:SELECTa.*FROM`subscription`a,userbWHEREb.id=a.user_idandcount(a.user_id)>1groupbya.id谁能告诉我我做错了什么?

php - SELECT....FOR UPDATE 实际上会延迟读取吗?

这是我的场景,假设我正在制作一个在线购物平台。我的用户在user_balance字段或表中的余额为100。现在,用户打开让他们提款的取款页面和让他的购物页面一键买100block钱watch假设用户取出100美元,同时以100美元的价格购买watch。我的问题是SELECTuser_balanceFROMbalancesFORUPDATE会同时执行还是会等待其他人完成选择。如果SELECT...FORUPDATE同时执行,user_balance将为两个页面显示100,因此,它将允许提取100并以100的价格购买watch,因此,当我们最终更新用户的余额时,它将显示负余额100(use

php - 如何使用 php 在 select 中提取 select 的值?

我这里有这段代码:if(isset($_POST['possible_new_dd'])){$dd=$_POST['possible_new_dd'];$id=$_POST['possible_new_dd_id'];$sql=mysqli_query($connection,"SELECTSUM(COILS),MACHINE,(SELECTCOILSFROMORDERSWHEREID='$id')FROMORDERSWHEREMACHINE=(SELECTMACHINEFROMORDERSWHEREID='$id')ANDC_DD='$dd';");$row=mysqli_fetch

MYSQL Group by 和 Group Concat 问题

如何使用Groupby和Group_concat通过1个SQL查询实现以下两种情况?对于情况1,即使设备1,2和3,4的组ID不同,输出设备ID仍应串联,因为组1和组2的名称和平台相同。CASE1Table:SMARTPHONE==========================================GROUP_IDDEVICE_IDNAMEPLATFORM11LGANDROID12APPLEIOS23LGANDROID24APPLEIOSDesiredOutputROWDEVICE_ID01,2,3,4对于情况2,由于组2中的其中一个名称值与组1不同(即设备3,Samsug

mysql - 如何在 MySQL 查询中使用 SELECT 参数赋值?

我一直在将MSSQLDB迁移到MySQL中,但我遇到了一种我在任何地方都找不到的语法,需要这种帮助。所有“MySQL参数”问题都涉及“select*frommytablewhereid=@id”,但我正在寻找以下语法:SELECT@MyParam=MyValueFROMMyTable虽然“SELECTMyValueFROMMyTable”返回值,但运行上述@MyParam查询返回NULL。从之前的回答中我看到,与MSSQL不同,在MySQL中,参数没有预定义为任何数据类型。我在这里错过了什么?谢谢 最佳答案 在SELECT子句中为用

mysql - SELECT COUNT with JOIN optimization for tables with > 100M rows

我有以下问题SELECTSUBSTRING(a0_.created_dateFROM1FOR10)ASsclr_0,COUNT(1)ASsclr_1FROMapplicationsa0_INNERJOINpackage_codesp1_ONa0_.id=p1_.application_idWHEREa0_.created_dateBETWEEN'2019-01-01'AND'2020-01-01'ANDp1_.type='Package1'GROUPBYsclr_0---编辑---你们中的大多数人都关注GROUPBY和SUBSTRING,但这不是问题的根源。以下查询具有相同的执行时间: