91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

mysql怎么將列值變列名

小億
253
2023-10-27 23:17:28
欄目: 云計算

在MySQL中,可以使用動態SQL或者使用PIVOT函數將列值變為列名。下面是兩種方法的示例:

  1. 使用動態SQL:
SET @sql = NULL;
SELECT
  GROUP_CONCAT(DISTINCT
    CONCAT(
      'MAX(IF(column_name = ''',
      column_name,
      ''', column_value, NULL)) AS ',
      column_name
    )
  ) INTO @sql
FROM your_table;

SET @sql = CONCAT('SELECT id, ', @sql, ' FROM your_table GROUP BY id');

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

在上面的示例中,假設你有一個表your_table,其中包含idcolumn_namecolumn_value列。通過將動態生成的SQL語句準備好并執行,你可以將column_name的值轉換為列名。

  1. 使用PIVOT函數:
SELECT *
FROM
(
  SELECT id, column_name, column_value
  FROM your_table
) src
PIVOT
(
  MAX(column_value)
  FOR column_name IN ([column1], [column2], [column3])
) piv;

在上面的示例中,你需要提前知道column_name中可能的值,并將它們手動列出。然后,使用PIVOT函數將這些列值轉換為列名。你可以根據你的實際情況修改列名的列表。

0
尚志市| 张家港市| 高密市| 竹山县| 长葛市| 兴隆县| 措美县| 台中县| 苍溪县| 东辽县| 璧山县| 壶关县| 图木舒克市| 邓州市| 苍南县| 电白县| 冕宁县| 探索| 门源| 洞口县| 佛山市| 和平县| 琼海市| 武胜县| 通江县| 章丘市| 徐州市| 和龙市| 嫩江县| 大宁县| 兴仁县| 灌南县| 图木舒克市| 定安县| 昌乐县| 镶黄旗| 景泰县| 宜春市| 渭源县| 广水市| 武威市|