草庐IT

update_query

全部标签

php - 使用未知数量的参数创建 Laravel Eloquent Query

我正在尝试研究如何使用用户输入动态创建Eloquent查询,该查询会根据输入的长度更改查询。直接使用MySQL这很简单……只需根据用户输入连接一个查询字符串。使用Eloquent是不可能的,除非您a)使用“原始”sql查询,这违背了使用Eloquent的目的,或者b)使用一些非常不健康的东西,比如eval()函数。如何遍历未知长度的用户输入并创建一个Eloquent查询来使用“OR”和“AND”的组合在多个字段中搜索单词考虑以下实际上无法工作的伪代码。$search="catsatonthemat";$searchWords=explode('',$search);$data['fin

java - TOP [N] 记录 Group By per user query in the best possible way

我今天遇到了一个有趣的问题:让我们假设以下条件1。有n个用户2。系统会收集每个司机移动时的GPS坐标3。我们必须查询每个用户的最后10条GPS坐标记录,按LAST_UPDATE_DATE降序排列4。表中有超过1982008条记录我通过查询最后的{(10+[thresholdvalue])*n}记录解决了这个问题,并使用HashMap在java中排列它们,其中用户是Key,各个坐标的列表是值(value)观这似乎不是最佳解决方案,因为它可能会选择随机记录并且可能不会覆盖每个用户的10条记录,在for循环中按用户查询也不是最佳解决方案,因为它需要多次数据库调用任何人都可以建议使用Sprin

mysql - "SELECT ... FOR UPDATE"不适用于 Hibernate 和 MySQL

我们有一个系统,我们必须在一个实体中使用悲观锁定。我们正在使用hibernate,所以我们使用LockMode.UPGRADE。但是,它不会锁定。表是InnoDB我们已检查锁定在数据库(5.0.32)中是否正常工作,所以这个错误http://bugs.mysql.com/bug.php?id=18184好像没问题。我们已检查数据源是否包含autoCommit=false参数。我们检查过SQLhibernate(版本3.2)生成的包含“FORUPDATE”。谢谢, 最佳答案 我遇到了非常相似的事情。我在Spring中使用@Transa

mysql - 当重复项是不同的唯一列时,如何防止 MySQL 在使用 ON DUPLICATE KEY UPDATE 时自动递增主键?

考虑下表:+-------------+------------------+------+-----+---------+----------------+|Field|Type|Null|Key|Default|Extra|+-------------+------------------+------+-----+---------+----------------+|vendor_id|int(10)unsigned|NO|PRI|NULL|auto_increment||vendor_name|varchar(100)|NO|UNI|NULL|||count|int(10)u

mysql - 奇怪的MySQL查询计划: why is this query using temporary & filesort?如何优化?

我有一个问题:SELECT*FROMamp_ads,amp_c,amp_c_countriesWHERE(amp_c.zone='24'ORamp_c.zone='25')ANDamp_ads.ad_complete='1'ANDamp_ads.ad_type='17'ANDamp_ads.accept='1'ANDamp_ads.en_w='1'ANDamp_c.en_u='1'ANDamp_c.en_w='1'AND(amp_c.i_nu>'0'ORamp_c.c_nu>'0'ORamp_c.d_valid_by>'1299341823'ORamp_c.unlimit='1')AN

mysql - 如何在 MySQL UPDATE 语句中模拟 OFFSET?

我有一个MySQL数据库表,其中包含文章ID(主键)和文章标题。我想从表中删除重复的标题,但保留第一次出现的标题。我最初只是简单地查询了所有重复的标题:SELECTtitle,count(id)AScountFROMarticlesGROUPBYtitleHAVINGcount>1然后我使用foreach循环和这个命令将所有重复的标题替换为空白:UPDATEarticlesSETtitle=''WHEREtitle='$duplicate_title'我想更新articles表并替换所有重复的标题,除了第一个条目,基于文章IDASC,使用类似这样的东西。问题是OFFSET似乎在UPDA

php - ON DUPLICATE UPDATE 不适用于某些行

我在查询中使用了ONDUPLICATEUPDATE,一些结果没有存储它。我尝试了所有可能的方法,但那些仍然保持不变。这是数据库图片。那些NULL,就是没有存储成功的行;结果应该是1而不是NULL。if($remark){$query3="INSERTINTO`audit_section_remarkrecord`SETremark='$remark',form_details_subquestion_id='$form_details_subquestion_id',form_details_section_id='$form_details_section_id',audit_sec

mysql - InnoDB : Bulk insert using transaction OR combine multiple queries?

在InnoDB中执行批量INSERT时,我应该使用事务吗STARTTRANSACTION;INSERTINTOtbl_name(a,b,c)VALUES(1,2,3);INSERTINTOtbl_name(a,b,c)VALUES(4,5,6);INSERTINTOtbl_name(a,b,c)VALUES(7,8,9);COMMITTRANSACTION;或者合并多个查询?INSERTINTOtbl_name(a,b,c)VALUES(1,2,3),(4,5,6),(7,8,9);如果重要的话,我正在使用PHP和MySQL数据库在同一台机器上。 最佳答案

mysql - 使用一个 SQL 查询进行 SELECT、UPDATE、DELETE?

我有一个递减值的小语句:UPDATEcart_itemsSETquantity=quantity-1WHEREcart_id={$cart_id}ANDid={$cart_item_id}但是如果该值在递减后变为0,SQL是否有可能删除该行?如果是这样,那么我想重新计算与该购物车匹配的行数:SELECTFROMcart_itemsWHEREcart_id={$cart_id}如果行数为零,我想从另一个表中删除该记录,如下所示:DELETEFROMcartWHEREid={$cart_id}目前似乎需要多个查询来执行此操作,但是否可以在单个SQL语句中完成所有操作?

php - 交响乐 2.5 : sql query with Where IN Clause using an array as a parameter

我正在尝试运行sql查询。我正在尝试选择具有特定角色的用户。在我的查询下方:$roleUser=$this->container->getParameter('user_role');$query=$this->getDoctrine()->getEntityManager()->createQuery('SELECTuFROMUserBundle:UserurWHEREur.roleIN:role_user')->setParameters('role_user',$roleUser);在我的config.yml中我定义了我的用户角色parameters:user_role:-ADM