Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从不同的表中查找值?_Php_Mysql - Fatal编程技术网

Php 如何从不同的表中查找值?

Php 如何从不同的表中查找值?,php,mysql,Php,Mysql,目前,我在MySQL数据库的一个表中有一个消息日志文件。在其他一些东西中,它包含发送者id和消息本身。我想在网站上显示日志 我有一个单独的表,其中包含发件人ID和此人的姓名(这是我实际想要显示的) 有没有比简单地运行另一个查询更好的方法?虽然这样做可行,但成本相当高,因为它需要对每个条目进行新的查询。理想情况下,我希望能够将id-->名称映射到数组中,但我只能找到将所有内容从一行放到数组中的内容(也称为水平),但我需要“垂直”条目 顺便说一下,我正在使用PHP 谢谢! 凯文了解。这正是您所需要的

目前,我在MySQL数据库的一个表中有一个消息日志文件。在其他一些东西中,它包含发送者id和消息本身。我想在网站上显示日志

我有一个单独的表,其中包含发件人ID和此人的姓名(这是我实际想要显示的)

有没有比简单地运行另一个查询更好的方法?虽然这样做可行,但成本相当高,因为它需要对每个条目进行新的查询。理想情况下,我希望能够将id-->名称映射到数组中,但我只能找到将所有内容从一行放到数组中的内容(也称为水平),但我需要“垂直”条目

顺便说一下,我正在使用PHP

谢谢!
凯文

了解。这正是您所需要的。

了解。这正是您需要的。

我相信您正在寻找这样的产品:

SELECT `name`, `message` FROM `msgtable` INNER JOIN `sendertable` USING(`sender_id`)

我相信你正在寻找这样的东西:

SELECT `name`, `message` FROM `msgtable` INNER JOIN `sendertable` USING(`sender_id`)

确保列名没有歧义。在需要的地方使用
tablename.columnname
语法。我使用的语法是:从日志中选择users.name、log.message、log.timestamp,users where log.sender=users.id按时间戳排序DESC sigh-我猜您不必麻烦将字段名括在``倒勾中,因为你对使用关键字作为名称不起作用感到惊讶。事实上,我是这样做的,但没有这样做。所以我把它们拿了出来,它成功了。确保你没有模棱两可的列名。在需要的地方使用
tablename.columnname
语法。我使用的语法是:从日志中选择users.name、log.message、log.timestamp,users where log.sender=users.id按时间戳排序DESC sigh-我猜您不必麻烦将字段名括在``倒勾中,因为你对使用关键字作为名称不起作用感到惊讶。事实上,我是这样做的,但没有这样做。所以我把它们拿出来,它起作用了。