如何使用php从mysql获取表名和列?

时间:2015-01-21 16:43:18

标签: php mysql

我在mySQL中创建了一个联接表,看起来像这样。

SELECT junction_departments_qsps.departments_fk, junction_departments_qsps.checked, qsps.id, qsps.qsp_name, employees.id, employees.first_name, employees.last_name 

FROM junction_departments_qsps 

INNER JOIN qsps ON junction_departments_qsps.qsps_fk = qsps.id 

INNER JOIN employees ON employees.department_id = junction_departments_qsps.departments_fk 

WHERE junction_departments_qsps.checked = 1 

正如您所看到的,我有一些具有相同列名“id”的表。在mySQL中,您将table-name链接到列名,如table-name.column-name。在PHP中,我通常会通过创建循环然后回显

来获取列名
$variable["column-name"];  

在PHP中有没有办法在mySQL中获取表名和列名?我试过这个

$variable["table-name.column-name"];

它不起作用。

我加入的桌子的问题是,当我这样做时

$variable["id"];

我没有得到正确的ID,因为我在mySQL中要求多个id。

谢谢你真的很感谢帮助! :)

2 个答案:

答案 0 :(得分:2)

您可以使用别名语法:

SELECT `id` as `object_id` FROM `objects`

我不知道MySQL是否喜欢别名中的.,如果确实如此,那就太棒了!

答案 1 :(得分:0)

如果你在不同的表中有相同的列名,你可以在查询中使用AS,例如

select a.id AS ida, b.id AS idb FROM tab1 a join tab2 b using(column)

在结果中你有

$data['ida];
$data['idb'];