在 Postgres libpq sql 中有一个函数 PQfnumber:返回与给定列名关联的列号。
可以说我有一个选择:
select a.*, b.* from a, b where a.id = b.id
现在如果我打电话
number = PQfnumber(pgresult, "a.id");
它将返回-1。
正确的方法是调用:
number = PQfnumber(pgresult, "id");
它返回 a.id 的位置。那么我需要如何调用该函数来获取 b.id 的列号?解决它的唯一方法似乎是写一个不同的选择:
select a.id as a_id, a.*, b.id as b_id, b.* from a, b where a.id = b.id
number = PQfnumber(pgresult, "b_id");
有没有其他办法解决这个问题?