如何使用php pdo在mysql中动态创建自动增量列?
可能重复:如何使用php pdo在mysql中动态创建自动增量列?,php,mysql,pdo,auto-increment,Php,Mysql,Pdo,Auto Increment,可能重复: 我有两张桌子,我用两张桌子做一个并集: 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
我有两张桌子,我用两张桌子做一个并集:
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以“查看更多结果”?PDO:一次一个查询。不是两个问题。使用mysqli,因为它支持多查询 另见:
AUTO_INCREMENT
——请看这篇文章:但我想要对联合查询结果进行AUTO_INCREMENT,在表1和表2中,我已经有了一个AUTO_INCREMENT列。您是否试图在单个PDO::query
调用中执行这两个SELECT
s?@lanzz:只是想法相同,看起来是这样的!在PDO中不可能这样做?您可以分别执行这两个查询。自定义变量在查询之间保持不变,只要您处于相同的连接中。