【发布时间】:2012-09-28 08:48:34
【问题描述】:
可能重复:
Is there an equivalent for MySQL's “multi_query()” in PDO?
我有两张桌子,我从两张桌子做一个联合:
select *
from table1
union
select *
from table2
我想动态创建一个自动增量列,以创建“更多结果”分页,将此自动增量 ID 作为偏移量传递。
我可以通过这种方式动态创建自动增量列:
SELECT @i:=0;
SELECT all_res.*,
@i:=@i+1 AS i
FROM (
select *
from table1
union
select *
from table2
) as all_res
但如果我在 php pdo 中运行查询,我会收到此错误:
SQLSTATE[42000]: Syntax error or access violation: 1064 SELECT all_res.*, @i:=@i+1 AS i' at line 1
如何获取唯一的列 ID 以便能够“查看更多结果”?
【问题讨论】:
-
只需将您想要的列定义为
AUTO_INCREMENT- dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html -
看到这个帖子:Get row number on select
-
但我想在联合查询结果上使用 auto_increment,在 table1 和 table2 中我已经有一个 auto_increment 列
-
您是否要在一个
PDO::query调用中执行这两个SELECTs? -
@lanzz: 就是这么想的,好像是这个!
标签: php mysql pdo auto-increment