php - 如何在 mysql 中使用 JOIN 获取不同值?

标签 php mysql

表1

|id | name |
|-----------
|1  | Test |
|2  | Hello|
|3  | Hii  |
------------

表2

------------------------------------
|id | name | related_id | Comments |
|-----------------------------------
|1  | Test |     1      |  Example |
|2  | Hello|     2      | Example2 |
|3  | Hello|     2      | Example3 |
|4  | Hello|     2      | Example3 |
------------------------------------

所以,我想输出如下:

|id | name | Comments  |
|-----------------------
|1  | Test | Example   |
|2  | Hello| Example3  |
|3  | Hii  |      -    |
------------------------

我想要表 1 中的所有记录,而表 2 中只需要 Distict 记录。 那么请告诉我如何使用 JOIN 查询。

最佳答案

WHERE之后和之前HAVINGORDER BY (如果有的话),有一个GROUP BY子句,您在其中列出您想要区分的列(这是一种非常非正式的解释方式)。

就您而言,您应该 GROUP BY name .

我不会讲更多细节。既然您知道了所有“关键字”,您就可以有效地通过 Google 进行搜索,以充分了解如何JOINGROUP BY工作。

关于php - 如何在 mysql 中使用 JOIN 获取不同值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25820150/

相关文章:

php - 将网站移动到登台/生产服务器的工具

mysql - 如何对两列进行分组连接

php - 将html表单数据插入数据库

php - 找不到类 'App\Http\Controllers\Controller' - Laravel 5.2

mysql - Postgres "ERROR: XX000: cache lookup failed for type 0 LOCATION: format_type_extended, format_type.c:128"?

MySQL 错误 2002 (HY000) : Can't connect to local MySQL server through socket '/var/run/mysql.sock' in widows 7

mysql - nodejs mysql查询没有

php - 返回数组中的 MySQL 行

javascript - 将 href 文本传输到文本框

php - 在递归数组中找到正确的值