mysql - SQL |如何根据记录id和另一列获取所有记录ID? (可能是简单的问题:) )

标签 mysql sql

我有一个由两列组成的表格。两列是 object_id 和 term_taxonomy_id。假设表格看起来像这样:

object_id | term_taxonomy_id
----------------------------
111       | 75
119       | 42
234       | 34
742       | 75
824       | 99
931       | 34
999       | 75

现在假设我知道object_id的值,并且我想检索具有相同 term_taxonomy_id 的所有对象 ID

例如,假设我的对象 ID 为 742,并且我希望获取 term_taxonomy_id 为 75 的所有 object_id 记录所以结果我应该有类似的东西

111、742、999

是否可以通过单个 SQL 查询来实现这一目标?

我使用的 DBMS 是 MySQL。

亲切的问候:)

最佳答案

使用GROUP_CONCAT

<罢工>

<罢工>
SELECT GROUP_CONCAT(Object_ID) ObjectList
FROM tableName
WHERE term_taxonomy_id = 75

更新1

SELECT GROUP_CONCAT(object_id) ObjectList
FROM   tableName
WHERE  term_taxonomy_id = 
        (
          SELECT term_taxonomy_id
          FROM   tableName
          WHERE  object_id = 742
        )

或使用 JOIN

SELECT GROUP_CONCAT(a.object_id) ObjectList
FROM   tableName a
       INNER JOIN tableName b
       ON a.term_taxonomy_id = b.term_taxonomy_id AND
               b.object_id = 742

关于mysql - SQL |如何根据记录id和另一列获取所有记录ID? (可能是简单的问题:) ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14769001/

相关文章:

php - PDO -> bindParam() 不将变量绑定(bind)到 PDO -> prepare() 语句

php - 来自 PHP 脚本的随机内容在重新加载时不刷新

mysql - 如何在实体属性值(EAV)模型中查询实体的所有信息?

sql - 编写此 SQL 查询的最有效方法是什么?

php - PDO 准备语句 - NULL

sql - 避免在 CASE 表达式中调用 COUNT 两次 (PostgreSQL)

php - 名为change的列出现奇怪的MySQL行为

mysql - 如何使用magento更新查询添加到表列中的现有值?

sql - MySQL 中的两个单列索引与一个两列索引?

sql - 区别于窗口函数。大查询