Php 如何在mysql中显示多个表的列名
我有两个表Php 如何在mysql中显示多个表的列名,php,mysql,Php,Mysql,我有两个表person和country。表person有3列id\u person、name\u person和id\u countrycountry有两列id\u country和name\u country 我想显示“人名”和“国家名”,只是列的名称,而不是记录。我怎么能得到这个 这应该可以做到: $result = $db->query('SELECT p.name_person, c.name_country FROM person AS p LEFT JOIN country a
person
和country
。表person
有3列id\u person
、name\u person
和id\u country
country
有两列id\u country
和name\u country
我想显示“人名”和“国家名”,只是列的名称,而不是记录。我怎么能得到这个 这应该可以做到:
$result = $db->query('SELECT p.name_person, c.name_country FROM person AS p LEFT JOIN country as c ON (p.id_country=c.id_country)');
$fields = array_keys($result->fetch(PDO::FETCH_ASSOC));
如果您想获取数据,而不仅仅是列名称,只需删除数组_键即可
$fields = $result->fetch(PDO::FETCH_ASSOC);
这应该做到:
$result = $db->query('SELECT p.name_person, c.name_country FROM person AS p LEFT JOIN country as c ON (p.id_country=c.id_country)');
$fields = array_keys($result->fetch(PDO::FETCH_ASSOC));
如果您想获取数据,而不仅仅是列名称,只需删除数组_键即可
$fields = $result->fetch(PDO::FETCH_ASSOC);
您可以访问MySQL信息模式数据库中的表列:
SELECT `COLUMN_NAME`
FROM `INFORMATION_SCHEMA`.`COLUMNS`
WHERE `TABLE_NAME` IN ('country', 'person')
AND `COLUMN_NAME` LIKE 'name_%';
您可以访问MySQL信息模式数据库中的表列:
SELECT `COLUMN_NAME`
FROM `INFORMATION_SCHEMA`.`COLUMNS`
WHERE `TABLE_NAME` IN ('country', 'person')
AND `COLUMN_NAME` LIKE 'name_%';
你可以用
$result = $db->query('SELECT person.name_person, country.name_country FROM person LEFT JOIN country ON (person.id_country=country.id_country)');
print_r(array_keys($result));
你可以用
$result = $db->query('SELECT person.name_person, country.name_country FROM person LEFT JOIN country ON (person.id_country=country.id_country)');
print_r(array_keys($result));
请看一看答案。这将有助于理解您试图实现的目标。如果您已经知道列名,为什么要获取列名?我想获取列名以从中创建字符串。然后将其与表的记录合并。最后我只有一根绳子。对不起,我的英语不好,先生:)你想问什么?请阅读,请看一下答案。这将有助于理解你想要达到的目标。如果您已经知道列名,为什么要获取列名?我想获取列名以从中创建字符串。然后将其与表的记录合并。最后我只有一根绳子。对不起,我的英语不好,先生:)你想问什么?请看下面的显示记录。我想显示列的名称使用
array\u键时,第一个键应该只打印列名。这就是显示记录。我想显示第一列的名称。使用array\u键时,
只应打印列名。