數據庫中數據行轉列 、列轉行

  mysql 說明 oracle 說明
行轉列 SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(#{keys},',',help_topic_id + 1),',' ,- 1) AS num
            FROM mysql.help_topic
            WHERE help_topic_id < LENGTH(#{keys}) - LENGTH(REPLACE (#{keys},',','')) + 1
  select Regexp_Substr(#{keys}, '[^,]+', 1, level, 'i')
      from Dual connect by level <= Length(#{keys}) - Length(replace(#{keys}, ',', '')) + 1
 
列轉行 SELECT id,GROUP_CONCAT(keyword SEPARATOR ';') FROM sysuser GROUP BY id 拼接字符串 可以將將多行合併成一行 SELECT id, listagg(NAME, ',') within group(order by TYPE) from KNOWLEDGE 中間用逗號","隔開
         
         

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章