【问题标题】:Mysql 3 single quotes in a rowMysql连续3个单引号
【发布时间】:2017-09-06 22:38:31
【问题描述】:

我遇到了下面的查询,使用 Mysql 将行动态转换为列。有谁知道 Product_Name 字段之前和之后的 3 个单引号做什么?

  SET @sql = NULL;
   SELECT
  GROUP_CONCAT(DISTINCT
    CONCAT(
      'count(case when Product_Name = ''',
      Product_Name,
      ''' then 1 end) AS ',
      replace(Product_Name, ' ', '')
    )
  ) INTO @sql
from products;

SET @sql = CONCAT('SELECT pt.partner_name, ', @sql, ' from partners pt
left join sales s
  on pt.part_id = s.partner_id
left join products pd
  on s.product_id = pd.prod_id
group by pt.partner_name');

PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;

【问题讨论】:

    标签: mysql syntax quotes


    【解决方案1】:

    https://dev.mysql.com/doc/refman/5.7/en/string-literals.html 说:

    ' 引用的字符串中的' 可以写成''

    该手册页上有很多示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-26
      • 1970-01-01
      • 1970-01-01
      • 2020-01-02
      • 2013-02-23
      • 1970-01-01
      相关资源
      最近更新 更多