【问题标题】:How to find out the values from a specific column in the results of a MySQL query?如何从 MySQL 查询结果中的特定列中找出值?
【发布时间】:2018-06-05 10:36:55
【问题描述】:

我有一个包含以下列的表:id、firstname、lastname、category。 假设我有以下类别的数据:动作、喜剧、戏剧、恐怖。 我的查询是

SELECT * FROM tablename WHERE firstname LIKE '%John%'

查询将带来所有名字中包含“John”的记录,让我们假设这些记录具有不同的类别值:仅动作和喜剧。

如何查找包含此特定搜索的类别列中所有可用值的列表。

谢谢!

【问题讨论】:

  • 你试过“GROUPBY”吗?

标签: php mysql


【解决方案1】:

如果您想要一个不同的类别列表,其中 firstname 类似于 John:

SELECT DISTINCT category FROM tablename WHERE firstname LIKE '%John%'

【讨论】:

    【解决方案2】:
    SELECT category FROM tablename WHERE firstname LIKE '%John%' 
    

    看起来很简单

    【讨论】:

      【解决方案3】:

      试试这个:

      SELECT * 
      FROM tablename 
      WHERE firstname LIKE '%John%' 
      and category='category_name'
      

      【讨论】:

      • OP 为什么要试试这个好的答案将始终解释所做的事情以及这样做的原因,不仅适用于 OP,而且适用于可能会发现此问题并正在阅读您的答案的 SO 的未来访问者。跨度>
      【解决方案4】:

      如果您想要包含发生次数的类别列表:

      SELECT DISTINCT CATEGORY, COUNT(*) AS Total FROM tablename WHERE firstname LIKE '%John%' GROUP BY CATEGORY ORDER BY CATEGORY
      

      【讨论】:

      • “ORDER BY”缺失但必填
      猜你喜欢
      • 2021-04-24
      • 1970-01-01
      • 2020-12-02
      • 2022-12-18
      • 1970-01-01
      • 2019-09-13
      • 1970-01-01
      • 2021-08-08
      • 2019-01-02
      相关资源
      最近更新 更多