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

溫馨提示×

mysql動態行轉列怎么實現

小億
141
2024-03-28 10:04:00
欄目: 云計算

在MySQL中將動態行轉列可以使用GROUP_CONCAT函數以及動態SQL語句來實現。以下是一個示例代碼:

假設有一個表格名為data,包含以下數據:

id name value
1 attribute1 10
1 attribute2 20
2 attribute1 15
2 attribute2 25

要將這些數據按照id進行行轉列,可以使用以下SQL語句:

SET @sql = NULL;
SELECT
  GROUP_CONCAT(DISTINCT
    CONCAT(
      'MAX(CASE WHEN name = ''',
      name,
      ''' THEN value END) AS ',
      name
    )
  ) INTO @sql
FROM data;

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

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

運行以上代碼后,將獲得以下結果:

id attribute1 attribute2
1 10 20
2 15 25

這樣就實現了將動態行轉列的功能。

0
沅江市| 都兰县| 吉首市| 平陆县| 准格尔旗| 沁源县| 乌审旗| 昔阳县| 五家渠市| 宝鸡市| 长岛县| 灌南县| 泸西县| 迁安市| 玉林市| 恭城| 鄢陵县| 文安县| 杭锦旗| 象州县| 松滋市| 奇台县| 大丰市| 牡丹江市| 廉江市| 新邵县| 惠来县| 平定县| 星座| 武定县| 寻乌县| 睢宁县| 万全县| 云浮市| 通化县| 仁化县| 溧阳市| 通江县| 西乌珠穆沁旗| 阳西县| 遵化市|