草庐IT

row-number

全部标签

MySql Performance : INSERT. ..ON DUPLICATE KEY UPDATE 或 UPDATE & ROW_COUNT

我查询大部分时间都会更新现有记录。但是,我需要检查此记录是否存在,如果不存在,我应该创建它。通常我会使用INSERT...ONDUPLICATEKEYUPDAT,但由于只需要插入几个查询,我正在考虑执行UPDATE并稍后检查如果返回的ROW_COUNT()为零,并且在这种情况下执行INSERT。什么会给我最好的表现? 最佳答案 MySQL有一个REPLACEINTO语法,这可能就是您正在寻找的。如果这对您不起作用,使用UPDATE并检查ROW_COUNT()应该可行,您可能希望将整个事情包装在存储过程中,这样您就可以节省返回服务器的

PHP 或 MYSQL : how to group results by ROW?

我正在使用mysql这些是我的tableD----------id,name----------1,d12,d23,d3t----------id,name----------1,t12,t23,t3c----------id,d_id,t_id----------1,1,11,1,21,1,31,2,11,2,21,2,31,3,11,3,21,3,3我想产生一个查询来得到这样的结果-------------------------------------------d.name,t.name,t.name,t.name--------------------------------

mysql_affected_rows 有时返回 0 而不是 1

我对php脚本有一个奇怪的问题-mysql_affected_rows()有时会无缘无故地返回“0”。有一个类似的问题@stackoverflow,这个问题的答案是:如果更新前后存在明显差异,MySQL只会实际更新一行。但这不是我的情况。例如,如果更新前的值为1320402744并且更新后的值为1320402944mysql_affected_rows()无论如何都会返回“0”。这种差异还不够明显吗?下面是3个文件。如您所见,所有文件都包含调用函数“online()”的文件“functions.inc.php”。文件“login.php”工作正常。它会在“session”表中正确插入一

尽管缺少子查询,但 MySQL 更新错误为 "Subquery returns more than 1 row"

我有一个关于mysql5.1.56的查询:select*fromteam_member_accountswherenode=33136...正好返回一行。但是,以下查询错误Subqueryreturnsmorethan1row:updateteam_member_accountssetfee_remaining=0,loan_account_balance=35000,reimbursable_amount=0,reimbursed_amount=0wherenode=33136嗯……什么?什么子查询?怎么超过一排? 最佳答案 该表

c# - GZip header 中的魔数(Magic Number)不正确。确保您传递的是 GZip 流

我在WinForm应用程序和Mysql数据库中工作,所以当我在MySqlWorkbench上运行数据库脚本时会显示此消息我点击“确定”并显示脚本运行脚本并创建数据库后,当我运行我的WinForm应用程序时,在第一次查询数据库时显示此异常:varpermissions_in_db=db.Permissions.Where(a=>a.Name==s).Count();System.IO.InvalidDataException不受控制:“GZipheader中的魔数(MagicNumber)不正确。确保您传递的是GZip流。”这是痕迹System.IO.InvalidDataExcepti

php - 插入行时,Codeigniter affected_rows 总是返回 0

我正在对表执行插入操作,只有在更新插入正确时脚本才会继续。if($this->db->affected_rows()>0){}在我的应用程序中的其他地方工作得很好,但由于某种原因,它在某一时刻没有并且总是返回0片段如下while($asked_order_amount_needed>0){$matches_attempted=0;$matched_orders=$query->result_array();foreach($matched_ordersas$matched_order){//wecanfillthesubmittedordercompletelywithamatched

php - MySQL Remove/Combine Similar Rows 及其引用

我有2个表:Tags和Post_Tags_relationship标签表有3列-ID(主要)、标题和URLPost_Tags_relationship表有2列-Tag_ID和Post_ID(主要是两者的组合)Tags表中有很多相似的tagtitle和url,我想删除所有重复的记录,同时修改Post_Tags_relationship,将删除的tagid更新为已有的,如果这样更新会返回duplicateid错误然后将其删除。所以如果标签表有:ID=20,Title=NewsSection,URL=news-sectionID=68,Title=NewsSection,URL=news-s

mysql - 试图从数据库返回行号的语法错误

SELECTROW_NUMBER()OVER(ORDERBYid),x,y,idFROMcoordonneesORDERBYid我正在尝试返回每一行的行号(名为coordonnees的表有3列:id、x、y),但此代码不起作用错误是:Syntaxerrornear'(ORDERBYid),x,y,id数据库:MYSQL5.7.9 最佳答案 显然,MySQL5.7不支持ROW_NUMBER()。但是,我在thissite找到了一个可以模拟它的新颖解决方案。.SELECT@row_num:=IF(@prev_value=c.id,@ro

mysql - SQL : Get row using dynamic date

首先让我先说我是一名初级学生,所以如果这是一个非常愚蠢的问题或不可能,我深表歉意。我在SQL脚本中有一个WHERE子句,如果日期晚于特定日期,它会获取行。像这样:WHEREu.created>UNIX_TIMESTAMP('2018-04-01')月和日将始终相同,但每年都需要根据当前年份更改年份。因此,明年四月我将不得不更改代码以阅读:WHEREu.created>UNIX_TIMESTAMP('2019-04-01')我想知道是否可以将年份更新为当前年份IF日期和月份都已过去4月1日 最佳答案 一个选择是使用DATE_FORMA

mysql - FlywaySqlException : Unable to insert row for version `11` in Schema History table `schema_version` : Field `version_rank` doesn't have a default value 错误

我在使用新迁移运行我的SpringBoot应用程序时遇到此错误。到目前为止,它已经完成了10次迁移。该字段确实没有默认值。不需要默认值,因为Flyway应该在该字段中插入值11。Causedby:org.flywaydb.core.internal.exception.FlywaySqlException:Unabletoinsertrowforversion'11'inSchemaHistorytable`app`.`schema_version`---------------------------------------------------------------------