Php Postgres-组合选择和更新
我在Postgres数据库中有一个包含消息的表。 当用户读取一条消息或一组属于一起的消息时,我收集消息ID,在SELECT查询之后,将read标志更新为TRUE 所以它只是两个简单的查询,仍然对内存友好。但是我想知道是否可以通过组合Php Postgres-组合选择和更新,php,postgresql,pdo,Php,Postgresql,Pdo,我在Postgres数据库中有一个包含消息的表。 当用户读取一条消息或一组属于一起的消息时,我收集消息ID,在SELECT查询之后,将read标志更新为TRUE 所以它只是两个简单的查询,仍然对内存友好。但是我想知道是否可以通过组合SELECT和UPDATE查询来改进它?我使用PHP/PDO进行数据库访问 有PostgresUPDATE语句的最新版本: UPDATE msg_tbl SET read = TRUE WHERE msg_id = ? RETURNING *; 但是,如果所
SELECT
和UPDATE
查询来改进它?我使用PHP/PDO进行数据库访问 有PostgresUPDATE
语句的最新版本:
UPDATE msg_tbl
SET read = TRUE
WHERE msg_id = ?
RETURNING *;
但是,如果所有行实际上都需要
更新
,那么这只是一种改进。如果一些已经有了read=TRUE
,这将导致空更新比SELECT
和一个单独的UPDATE
更昂贵,并附加了一个WHERE read=FALSE
您想要的内容,那么,是一个单独的查询来执行选择
和更新
?您不能混合读写语句。您可以这样做,但没有真正的收益