草庐IT

id_colour

全部标签

php从ids数组中选择多行

这个问题在这里已经有了答案:Gettopnrecordsforeachgroupofgroupedresults(12个答案)关闭6年前。对于mysql表,我有10行,其中5(一半)行的post_id为5,而其他5行的post_id234。我想根据日期从每个post_id中选择2行:这是我目前的情况$post_ids=$_POST['id'][0];$ids=implode(',',$post_ids);//id'sin','format$query="SELECT*FROM$tableWHEREpost_idin({$ids})ORDERbydatedesclimit2";这只会获得

PHP MySQL - 用户输入名称并插入相应的ID

我有两个表,members和games。members中是member_id、first_name、last_name等数据我想做的是为games创建一个表单,用户可以在其中输入参与成员的名字和姓氏(在一个字符串中,而不是单独的)和一些PHP代码查询此名称,找到相应的ID并将其存储起来。当然,member_id在games中是一个外键,但是用户不会知道成员(member)的id,他们只会知道他们的名字。如果有人能解释我将如何着手这样做,我将不胜感激。表格:FormDate:Duration:MemberName:行动:prepare("INSERTINTOgames(date,dura

mysql - 删除 ID 最小的帖子 SQL

Deletefrompostwhereid_postin(selectMIN(id_post)frompostwhereid_owner='2')返回:“您不能在FROM子句中指定要更新的目标表‘post’”我做错了什么? 最佳答案 问题是MySQL,如果你在表上执行更新/插入/删除,你不能在内部查询中引用该表(但是你可以引用外部表中的字段...)解决方法是将子查询中post的实例替换为(selectMIN(id_post)从邮寄其中id_owner='2'),像这样Deletefrompostwhereid_postin(sele

mysql - parent_id 外键(自引用)和 null?

阅读BillKarwin的书“SQL反模式”,第3章,朴素树(邻接表,父子关系)有一个评论表的例子。CREATETABLEComments(comment_idSERIALPRIMARYKEY,parent_idBIGINTUNSIGNED,commentTEXTNOTNULL,FOREIGNKEY(parent_id)REFERENCESComments(comment_id));示例数据|comment_id|parent_id|comments|------------|----------|-------------------------------------|1|NULL

php - 如何获取max id之前的数据

我正在做一个有公告的信息系统,所以我想从公告表中获取数据,首先应该是具有最大ID的数据,因为它是最新的公告,这是我的代码:SELECTimageFROMannouncewhereid=(SELECTmax(id)FROMannounce);现在我想获取最大id之前的数据,我在这里使用这段代码:SELECTimageFROMannouncewhereid=(SELECTmax(id)-1FROMannounce);但是它只在没有被删除的行时有效,如果有一些被删除的行它就不起作用,比如maxid是10并且id的9,8,7被删除。也就是说现在的id是:1,2,3,4,5,6,10,我怎么才能

mysql - 如何在 TypeORM 中使用具有自动递增 id 列的表进行级联插入

我正在尝试使用typeorm实现级联插入。子表条目包括对父表ID字段的外键引用。typeorm似乎没有从父行捕获自动增量id并将其提供给子insert。这是父实体:import...@Entity("parent")exportclassParent{@PrimaryGeneratedColumn()id:number;@OneToOne(type=>Account,accountId=>accountId.provider)@JoinColumn({name:"account_id"})accountId:Account;@Column("varchar",{name:"name",

mysql - 后跟 SELECT LAST_INSERT_ID 时 INSERT 不起作用

有很多关于LAST_INSERT_ID()的问题就我而言,问题是:当INSERT后跟SELECTLAST_INSERT_ID()时,没有插入任何记录INSERTINTOsequences(state)VALUES(0);selectLAST_INSERT_ID();>>>80//nothingisaddedtoDBINSERT它自己的作品OKINSERTINTOsequences(state)VALUES(0);>>>selectLAST_INSERT_ID();>>>81//rowisinserted为了测试,我使用的是SequelPro,DB是Amazon的RDSMySQL。当我使

php - 如何让用户 ID 登录并与他正在做的帖子一起注册?

我正在开发一个web应用程序,并且正在处理表之间的关系。我想做以下事情:用户将注册一台与之相关的打印机,程序将获取他在表单中输入的数据,并连同他的ID一起保存在数据库中,以便在我调用他时在另一个表中引用。我尝试执行以下操作:publicfunctionsavePrinter(Request$request){$user=$request->user()->id;Printers::create($request->all(),$request->user()->id);returnredirect()->back();}打印机.php我希望程序在打印机表中保存已登录用户的ID以供引用观

mysql - Zend_Db last_insert_id 返回超大数

我有一个主键是64位BigInt的MySql表我正在使用Zend_Db(ZendFramework1.8.4)插入一个新行,然后调用lastInsertId()来检索新行的id,我得到的是一个超大数字,例如18446744072633694008,这个数字发生了变化有时,但总是这么大。自动递增索引设置为0,并且在数据库中记录实际上插入了正确的主ID,(0,1,2...),只是从lastInsertId()返回的ID给出了奇怪的数字。这是不处理64位数字的Zend_db的已知问题吗?环境:Zend框架1.8.432位机器上的Apache2,操作系统MySQL5.1PHP5.2.4MySQ

mysql - 如何从不存在id的子查询中获取

我有一个从表中检索结果的sql查询,但我需要它仅在ID不在另一个表中时显示结果。例子$sql="SELECTidFROMTABLE_1WHEREidNOTIN(SELECTmore_idFROMTABLE_2)想法是,如果id不存在于“more_id”列表中,那么它应该显示结果。它似乎不起作用,任何帮助将不胜感激。我应该提到“more_id”只是同一个“id”,但在另一个存储其他记录的表中。 最佳答案 这应该有效:$sql="SELECTTABLE_1.idFROMTABLE_1LEFTJOINTABLE_2ONTABLE_1.id