草庐IT

grouped-collection-select

全部标签

MySQL 错误 1064 (v 5.0.96) GROUP BY 子句

我习惯于在Oracle数据库上运行,所以我不太确定如何解决这个问题。我已将查询的一个简单示例缩小为以下内容:SELECT0asgm_rowID,'-ALLGrantmakers-'asgrantmakerNameFROMdualGROUPBY2phpMyAdmin运行SQL时出现以下错误:#1064-YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMySQLserverversionfortherightsyntaxtousenear'ORDERBY2LIMIT0,30'atline1Oracle可以很好

MySQL:在列列表中使用 GROUP BY 与子选择

在我的应用程序中,我有两个MySQL表,'units'和'impressions'是一对多的关系。我需要从单元表中获取所有广告单元的列表,还需要获取每个广告单元的展示次数。我有两个SELECT查询来执行此任务(针对此示例进行了简化),首先使用子选择:SELECT(SELECTCOUNT(*)FROMimpressionsWHEREimpression_unit_id=unit_id)ASimpressions_count,unit_idFROMunits;然后使用GROUPBY:SELECTCOUNT(impression_id)ASimpressions_count,unit_idF

mysql - 简单的 mysql 查询比嵌套 Select 慢

我正在从单个表中执行简单的选择。CREATETABLE`book`(`Book_Id`int(10)NOTNULLAUTO_INCREMENT,`Book_Name`varchar(100)COLLATEutf8_turkish_ciDEFAULTNULL,`Book_Active`bit(1)NOTNULLDEFAULTb'1',`Author_Id`int(11)NOTNULL,PRIMARYKEY(`Book_Id`),KEY`FK_Author`(`Author_Id`),CONSTRAINT`FK_Author`FOREIGNKEY(`Author_Id`)REFERENCE

java - JPQL : inner join with group by

我正在尝试使用criteriabuilder从数据库中检索数据。它工作得很好,查询几乎完美……几乎。不幸的是,Java不希望我在查询结果中使用groupby或distinct。如何让Java只检索唯一的记录?我的代码在这里:ListdocumentationList=newArrayList();DatabaseConnectordc=newDatabaseConnector();Listcriteria=newArrayList();EntityManagerem=dc.getEntityManager();CriteriaBuilderbuilder=em.getCriteriaB

php - 使用 PDO 有效地获取带有 WHERE 子句的 SELECT 查询返回的行数

有numerousdiscussionsonSO关于如何在使用PDO运行SELECT查询时获取返回的行数。虽然大多数(包括PHPmanual)建议使用两个查询,第一个运行COUNT(),但我还没有看到有人建议如何使用带有WHERE的准备好的语句轻松地做到这一点子句。我如何最有效地(在处理和代码行数方面)使用相同的WHERE子句运行COUNT()?准备好的查询已经指定了列。fetchAll()在这里不起作用,因为它无法扩展;如果我必须返回数百万行,使用fetchAll处理它会非常慢。例如,没有计数:$sql="SELECTFirstName,LastNameFROMPeopleWHERE

mysql查询group by in group_concat

我有以下查询:SELECTfiles.file_name,files.locked,projects.project_name,group_concat(versions.version,versions.languageSEPARATOR'&')FROMfilesJOIN`projects`ON(files.project_id=projects.project_id)JOIN`versions`ON(files.file_id=versions.file_id)WHEREfiles.file_id='1'ORDERBYprojects.project_nameASC这给了我这张表:

mysql - 同一个表中的一个查询中的两个 SELECT

我有一张table:id|parent_id|name1|NULL|audi2|1|a53|1|a64|NULL|opel5|4|astra6|4|vectra我想获取记录名称和记录父项的名称。一个示例是获取id=5的名称及其父名称。id|name|parent_name5|astra|opel这个的SQL查询是什么?我的查询:SELECTname,parent_idFROM`cats`WHERE`id`=5OR`id`=cats.parent_idLIMIT0,30没用。 最佳答案 您可以使用以下查询:SELECTT1.id,T1

mysql - GROUP BY MySQL 中的一列,但仅来自另一列的唯一组

我只有一张table。idtitlevalue1title_avalue_z1title_avalue_y1title_avalue_x2title_avalue_z2title_avalue_y2title_avalue_x3title_avalue_z3title_avalue_y3title_avalue_w4title_avalue_z4title_avalue_y5title_avalue_z5title_avalue_y5title_avalue_x5title_avalue_w我要返回:1title_a3title_a4title_a5title_a换句话说,我想按id分

MYSQL select if exists (来自不同的表)

我目前有一个搜索功能,我需要它从不同的表中返回值(如果该值存在)SELECTcrm.lead_id,crm.id,url,contact,info,status_id,added,last_edited,callback_date,user.user,status.status,crm_updates.status_infoFROMcrm,user,status,crm_updatesWHERE(urlLIKE'%$search%'ORcontactLIKE'%$search%'ORinfoLIKE'%$search%'ORstatus_idLIKE'%$search%'ORadded

MySQL - 返回每个 GROUP BY 的 X 数

在此查询中,我指定了我要返回的汽车型号(硬编码)。所以下面的SQL为每个模型返回一个记录:SELECT*FROMmainWHERE((marka_name='SUBARU'ANDmodel_name='IMPREZA'AND(kuzov='GC8'ORkuzov='GF8'))OR(marka_name='MAZDA'ANDmodel_name='RX-7'ANDkuzov='FD3S')OR(marka_name='MITSUBISHI'ANDmodel_name='LANCER'AND(kuzov='CN9A'ORkuzov='CP9A'))OR(marka_name='NISSA