<分区>
我在加入的不同表中有同名的字段。如ticket.status
、user.status
和transaction.status
。目前,查询仅返回 status
。
如何获取表名以阻止相似的字段名被覆盖,这样我就可以分辨出字段之间的区别。
简单地说:
$data = array($eventId);
$statement = $this->db->prepare("SELECT * FROM ticket, user, transaction
WHERE ticket.eventId = ?
AND ticket.userId = user.userId
AND ticket.transactionId = transaction.transactionId");
$statement->execute($data);
$rows = $statement->fetchAll(PDO::FETCH_ASSOC);
在我的研究中,我发现常量 PDO::ATTR_FETCH_TABLE_NAMES
看起来有帮助,但我不知道如何实现(我假设通过 $statement->setAttribute ();
不知何故)。
我也担心它不会工作,因为 PHP 文档提到它依赖于驱动程序。
谢谢