草庐IT

select-query

全部标签

php - 在 codeigniter 中查询 "select for update"

我有query=SELECT@condi:=idFROMtableWHEREid>1LIMIT1forUPDATE;更新表集aa="ok"WHEREid=@condi我使用了$this->db->query(query)但是codeigniter信息错误“您的SQL语法有错误;请查看与您的MySQL服务器版本相对应的手册,了解在第1行的‘updatetablesetaa="ok"whereid=@condi'附近使用的正确语法”想念“;”我使用phpmyadmin执行此查询,结果行正确而不是错误查询也许核心codeigniter错误你能帮我在codeigniter中执行我的查询吗,谢谢

php - 在 SELECT 语句中将数字放在引号周围有什么影响?

我的印象是数字是否被引用并不重要,但是当我注意到这个简单的查询时:SELECTidFROMtabletWHEREt.col=1234执行0.21s(其中id是一个BIGINT主键,col是一个varchar一个索引),我知道有些地方不对。摆弄了一段时间后,我尝试在数字周围加上引号:SELECTidFROMtabletWHEREt.col="1234"执行时间下降到0.046s。这是侥幸,还是是否引用数字有关系?编辑:另外,这对绑定(bind)参数的PDO查询有何影响?编辑2:显然查询计划不同:没有引号:+----+-------------+-------+------+-------

php - 如果在查询中不考虑用户输入,使用 mysqli_query() 是否危险?

每当我想运行MySQL查询时,我都会准备语句:$query="SELECT*FROMusersWHEREname=?";$stmt=mysqli_stmt_init($con);$stmt->prepare($query);$stmt->bind_param('s',$_POST['user']);$stmt->execute();$result=$stmt->get_result();$assoc=mysqli_fetch_assoc($result);但是,如果我根本不接受用户的任何信息怎么办?这是:$query="SELECT*FROMusers";$stmt=mysqli_st

mysql - findOne({键 :value}) or findOne(). 其中({键 :value}) when querying database with waterline?

我正在使用Waterline通过Sails查询MySQL数据库。我找到了2种方法。不知道哪个更好?顺便问一下,如何处理这两种情况的错误?1.Model.findOne().where({key:value}).then(function(data){console.log(data);})2.Phase.findOne({key:value}).then(function(data){console.log(phase);}) 最佳答案 两者都行。在该方法中,您会发现如下所示的错误。1.Model.findOne().where({

mysql - Spring 批处理 : ItemProcessor query Database?

我有一个场景,我需要解析平面文件并将这些记录处理到mysql数据库插入(模式已经存在)。我正在使用FlatFileItemReader解析文件,并使用JdbcCursorItemWriter插入数据库。我还使用ItemProcessor来转换任何列值或跳过我不需要的记录。我的问题是,其中一些插入需要有一个外键,指向其他已经有数据的表。所以我想在ItemProcessor逻辑中进行选择以检索ID并更新pojo。这是最好的方法吗?我可以考虑替代方案,因为我才刚刚开始写这一切。谢谢! 最佳答案 SpringBatch步骤中的ItemPro

mysql - 加速 : query with a GROUP BY

我使用下面的查询来选择电影年龄最小的Actor。SELECTproduction_cast.production_id,MIN(birthdate)FROMpersonLEFTJOINproduction_castONproduction_cast.person_id=person.idWHEREbirthdateISNOTNULLGROUPBYproduction_cast.production_id;然而IMDB数据集非常庞大,需要300多秒才能完成。如果没有GROUPBY和MIN,此查询将在0.2秒内完成:SELECTproduction_cast.production_idFR

php - Codeigniter:this->datatables->select(sample)->from(sample)->where()

请帮帮我。我无法正确使用我的数据表。我想做的是从表中选择并使用where函数。但我做不到。这是我的Controller代码publicfunctionreporttable(){$zz=array('empnumber'=>$this->input->post('empnumber'));//$this->db->order_by("surname","asc");$this->datatables->select('date_auto,particulars,earned_VL,aul_VL,balance_VL,aulx_VL,earned_SL,aul_SL,balance_SL

mysql - 为什么我的带有 ORDER BY 的 MySQL SELECT 语句这么慢,即使列上有 INDEX?

我有一个movies表。它有130万行。该表在title列上有一个INDEX,顺序为asc,长度为255。title列本身是一个VARCHAR(1000)。即使使用该设置,以下查询也需要8秒才能运行。关于为什么会这样,有人在黑暗中有想法或镜头吗?我很困惑,因为这似乎是一个需要解决的基本问题。SELECTtitleFROMmoviesORDERBYtitleLIMIT150000,50000当我取出ORDERBY时,查询速度超快(0.05秒):SELECTtitleFROMmoviesLIMIT150000,50000 最佳答案 编辑

php - 限制偏移量大于实际记录的mysql select语句

我创建了一个mysql语句,使用LIMITx,n对结果进行分页(其中x是偏移量,n是返回的条目).偏移量是使用GET-Vars以page=x的形式创建的。现在Google的索引中有一些来自旧抓取的奇怪条目,其中页面变量超过了结果集中记录的实际数量。意思是,使用page变量创建的查询结果类似于LIMIT1000,30-但查询只会返回900条目(因为表的内容同时发生了变化。当然,这会返回一个空的结果集。有没有办法告诉mysql,如果偏移量超过返回的记录,则只显示最后一个可能的结果集?我不想首先使用COUNT()进行额外的查询,因为这会使mysql-server的负载加倍(现在我正在使用SQ

java - JDBC Select * from user_table 抛出错误

关闭。这个问题是notreproducibleorwascausedbytypos.它目前不接受答案。这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助future的读者。关闭7年前。Improvethisquestion我正在尝试制作一个java程序来根据我的数据库检查用户名和密码,目前代码抛出一个错误说明:MultiplemarkersatthislineTheoperator*isundefinedfortheargumenttype(s)java.lang.String,java.lang.StringSyn