Heim Datenbank MySQL-Tutorial oracle—SQL技巧之(二)WMSYS.WM_CONCAT函数实现多行记录用逗号拼

oracle—SQL技巧之(二)WMSYS.WM_CONCAT函数实现多行记录用逗号拼

Jun 07, 2016 pm 05:56 PM
字符串 拼接

由于业务系统的交易记录有很多,常常有些主管需要看到所有的记录情况;又不想滚动;接下来介绍使用Oracle自带的函数 WMSYS.WM_CONCAT,进行拼接,感兴趣的朋友可以了解下

需求
目前接触BI系统,由于业务系统的交易记录有很多,常常有些主管需要看到所有的记录情况,但是又不想滚动,想一眼就可以看到所有的,于是就想到了字符串拼接的形式。

解决方案:使用Oracle自带的函数 WMSYS.WM_CONCAT,进行拼接。
函数限制:它的输出不能超过4000个字节。

为了不让SQL出错,又可以满足业务的需求,超过4000个字节的部分,使用“。。。”
实现SQL如下
代码如下:
CREATE TABLE TMP_PRODUCT
(PRODUCT_TYPE VARCHAR2(255),
PRODUCT_NAME VARCHAR2(255));

insert into tmp_product
select 'A','ProductA'||rownum from dual
connect by level union all
select 'B','ProductB'||rownum from dual
connect by level union all
select 'C','ProductC'||rownum from dual
connect by level union all
select 'D','ProductD'||rownum from dual
connect by level union all
select 'E','ProductE'||rownum from dual
connect by level 代码如下:
SELECT PRODUCT_TYPE,
WM_CONCAT(PRODUCT_NAME) || MAX(STR) AS PRODUCT_MULTI_NAME
FROM (SELECT PRODUCT_TYPE,
PRODUCT_NAME,
CASE
WHEN ALL_SUM > 4000 THEN
'...'
ELSE
NULL
END AS STR
FROM (SELECT PRODUCT_TYPE,
PRODUCT_NAME,
SUM(VSIZE(PRODUCT_NAME || ',')) OVER(PARTITION BY PRODUCT_TYPE) AS ALL_SUM,
SUM(VSIZE(PRODUCT_NAME || ',')) OVER(PARTITION BY PRODUCT_TYPE ORDER BY PRODUCT_NAME) AS UP_SUM
FROM TMP_PRODUCT)
WHERE (UP_SUM 4000)
OR ALL_SUM GROUP BY PRODUCT_TYPE
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Detaillierte Erläuterung der Methode zum Konvertieren des Typs „int' in „string' in PHP Detaillierte Erläuterung der Methode zum Konvertieren des Typs „int' in „string' in PHP Mar 26, 2024 am 11:45 AM

Detaillierte Erläuterung der Methode zum Konvertieren des Typs „int' in „string' in PHP

Wie kann man in Golang überprüfen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt? Wie kann man in Golang überprüfen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt? Mar 12, 2024 pm 09:42 PM

Wie kann man in Golang überprüfen, ob eine Zeichenfolge mit einem bestimmten Zeichen beginnt?

So ermitteln Sie, ob eine Golang-Zeichenfolge mit einem bestimmten Zeichen endet So ermitteln Sie, ob eine Golang-Zeichenfolge mit einem bestimmten Zeichen endet Mar 12, 2024 pm 04:48 PM

So ermitteln Sie, ob eine Golang-Zeichenfolge mit einem bestimmten Zeichen endet

So wiederholen Sie eine Zeichenfolge in Python_Tutorial zum Wiederholen von Zeichenfolgen in Python So wiederholen Sie eine Zeichenfolge in Python_Tutorial zum Wiederholen von Zeichenfolgen in Python Apr 02, 2024 pm 03:58 PM

So wiederholen Sie eine Zeichenfolge in Python_Tutorial zum Wiederholen von Zeichenfolgen in Python

So lösen Sie das Problem verstümmelter chinesischer Zeichen bei der Konvertierung von Hexadezimalzahlen in Zeichenfolgen in PHP So lösen Sie das Problem verstümmelter chinesischer Zeichen bei der Konvertierung von Hexadezimalzahlen in Zeichenfolgen in PHP Mar 04, 2024 am 09:36 AM

So lösen Sie das Problem verstümmelter chinesischer Zeichen bei der Konvertierung von Hexadezimalzahlen in Zeichenfolgen in PHP

Tipps zum PHP-String-Matching: Vermeiden Sie mehrdeutige eingeschlossene Ausdrücke Tipps zum PHP-String-Matching: Vermeiden Sie mehrdeutige eingeschlossene Ausdrücke Feb 29, 2024 am 08:06 AM

Tipps zum PHP-String-Matching: Vermeiden Sie mehrdeutige eingeschlossene Ausdrücke

PHP-String-Manipulation: eine praktische Möglichkeit, Leerzeichen effektiv zu entfernen PHP-String-Manipulation: eine praktische Möglichkeit, Leerzeichen effektiv zu entfernen Mar 24, 2024 am 11:45 AM

PHP-String-Manipulation: eine praktische Möglichkeit, Leerzeichen effektiv zu entfernen

PHP-Techniken zum Löschen der letzten beiden Zeichen einer Zeichenfolge PHP-Techniken zum Löschen der letzten beiden Zeichen einer Zeichenfolge Mar 23, 2024 pm 12:18 PM

PHP-Techniken zum Löschen der letzten beiden Zeichen einer Zeichenfolge

See all articles