草庐IT

update_by_query

全部标签

mysql - SQL UPDATE 或 DELETE 如果重复

我正在尝试在我的数据库中运行3个查询:UPDATE`table`SET`rubriq`='77'WHERE`rubriq`='61';UPDATE`table`SET`rubriq`='77'WHERE`rubriq`='62';UPDATE`table`SET`rubriq`='77'WHERE`rubriq`='63';在table中,我有两列abonne和rubriq。Abonne是主键,两个是索引。如果在我的数据库中有例如:abonne|rubriq84|6184|6284|63当我运行3个查询时,第一个没有问题,但第二个出现错误:#1062-Duplicateentry'84

mysql - 使用 2 个连接和 group by 子句优化 mysql 查询

我有一个需要10-20秒的查询,但我确信它可以优化,我只是不够好。我需要一些帮助和解释,以便我可以将其应用于类似的查询。这是我的查询:SELECT`store_formats`.`StoreNbr`,`store_formats`.`StoreName`,`store_formats`.`FormatName`,`eds_sales`.`Date`,sum(`eds_sales`.`EPOSSales`)ASSales,sum(`eds_sales`.`EPOSQuantity`)ASQuantityFROM`eds_sales`INNERJOIN`item_codes`ON`eds_

php - 基于 mySQL 中的 COUNT() 值限制 GROUP BY

我正在将事件记录到mySQL数据库中,并希望获取前3个事件以用于监控目的。我的表eventlog如下所示:+----+------------------+---------------------+|id|eventname|eventdate|+----+------------------+---------------------+|0|machine1.started|2016-09-0419:22:23||1|machine2.reboot|2016-09-0420:23:11||2|machine1.stopped|2016-09-0420:24:12||3|machin

mysql - 如何将 CASE 语句放在 GROUP BY 子句中

我有一个表,其中有一列是用逗号分隔的可能值列表。我想查询,按每个可能的值分组。作为测试,我编写了这个查询:SELECT`Please_identify_which_of_the_following_classroom_hardware_you_c2`,count(`_How_would_you_rate_your_overall_skill_in_using_educational_tec1`)ascount,`_How_would_you_rate_your_overall_skill_in_using_educational_tec1`FROM`data_Copy_of_Facul

mysql group by query with column filter

我有一个mysql表,其中包含下面提到的C1、C2和C3列数据。表格数据如下(保密的虚拟数据)。我想要一个mysql查询,它将按c1降序返回所有C1列的计数(首先获得最大计数C1),其中C1的最大计数desc和C2数据重复了最大次数,与C3相同。C1C2C3XAUXAUXBVYHKYHKYHKZFRZFPZGPZFR输出应采用以下格式。CountC1C2C34ZFP3YHK3XAU我能够在同一查询中获取计数,但不能获取C2、C3的最大重复值。 最佳答案 你可以尝试使用select子查询来实现。查询1:SELECTCOUNT(*),C

mysql - 如何修复蛋糕烘焙控制台中的错误 "PHP Fatal error: Call to undefined function mysql_query() "

这个问题在这里已经有了答案:Whyshouldn'tIusemysql_*functionsinPHP?(14个答案)关闭25天前。我在很多地方都看到过这个错误,但确实如此。我在运行蛋糕烘焙控制台时遇到此错误,就在选择C“Controller”然后选择默认数据库配置之后我通过Virtualbox在Ubuntu10.10上我正在使用xampp-并通过命令apt-getinstallcakephp安装了cakephp这里是错误UseDatabaseConfig:(default/test)[default]>PHPFatalerror:Calltoundefinedfunctionmysq

mysql - ORDER BY RAND() 似乎不那么随机

我有一个相当简单的SQL(MySQL):SELECTfooFROMbarORDERBYrank,RAND()我注意到当我刷新结果时,随机性很弱。目前样本数据中有六个排名相同的结果(整数零)。有很多随机性测试,但这里有一个简单的手动测试:运行两次时,两次运行的第一个结果应该相同,大约有六分之一的时间。这肯定不会发生,领先的结果至少有三分之一的时间是相同的。我想要对排列进行均匀分布。我不是专家统计学家,但我很确定ORDERBYRAND()应该可以做到这一点。我错过了什么?对于MySQL,SELECTrand(),rand()显示两个不同的数字,所以我不相信“每个查询一次”的解释

mysql - 在 MySql "order by"子句中高效地进行数学运算?

有人多次告诉我,使用数学进行SELECT非常有效,而在WHERE子句中使用数学并不是很有效。这些观点是否正确?这如何应用于ORDERBY子句?谢谢!!示例:SELECTa.*FROMaORDERBY(a.field_1*a.field_2) 最佳答案 如果结果大于sort_buffer_size,您的查询将不得不使用磁盘上的临时文件对整个表进行排序。您可能想在表中添加一列来保存字段1*字段2的值。这当然会使您的数据稍微反规范化,但您可以在现场创建索引。如果你在新字段上有一个索引,那么MySQL可以读取使用索引预先排序的数据,因为My

mysql - GROUP BY 与 INSERT IGNORE

嗨!我需要在mysql(5.1)上扫描一个非常大的表,表格大致是这样的:CREATETABLE`big_table`(`id`BIGINT(11)NOTNULLAUTO_INCREMENT,`main_id`INT(11)DEFAULTNULL,`key`VARCHAR(20)NOTNULL,PRIMARYKEY(`id`),KEY`main_id_key`(`main_id`,`key`),)ENGINE=INNODBAUTO_INCREMENT=2315678197DEFAULTCHARSET=utf8我需要将main_id+keys的所有唯一值放入一个新表中。使用以下查询需要花费

mysql - 在查询和 LIMIT 之后应用 ORDER BY

找到了类似的帖子但仍然卡住-我正在尝试在处理查询并限制结果后应用排序。我的代码是selectDISTINCT(t.id)t_id,t.cart_id,tS.idtS_id,tS.createdtS_created,t.value,t.transactionType_idtT_id,tS.member_name,outIn,tT.typetypefrom(transactiont)jointransactionSummarytSONtS.id=t.transactionSummary_idleftjointransactionTypetTONtT.id=t.transactionType