oracle資料庫中listagg函式的使用

2021-08-17 01:24:46 字數 617 閱讀 9888

公司有三個平台,同乙個客戶拿手機號在三個平台都註冊了,但註冊過的使用者名稱不一樣,顯示的時候需要根據手機號顯示所有註冊過的名稱。

1、原始資料是這樣的,如圖:

2、要求顯示成這樣,如圖:

3、sql函式:

select phone, listagg(log_name, ',') within group(order by phone) logname

from int_phone

where phone = '15665147882'

group by phone

4、需要注意的事項如下:

(1). 必須得分組,也就是說group  by是必須的。

(2). listagg函式的第乙個引數是需要顯示的字段,也就是log_name;第二個引數是數值之間的分隔符;同時還需要進行排序和分組within group (order by name)

資料庫 Oracle中建立資料庫

create database lihua 網上的說法是 oracle中的例項只對應乙個資料庫,出現此種情況說明oracle資料庫處於mount 裝載 或open狀態,需要使用startup nomount語句進行狀態更改,或者是直接使用dbca的圖形介面來建立 注 經測試,startup nomo...

oracle資料庫中sql notfound的用法

sql notfound 是乙個布林值。與最近的sql語句 update,insert,delete,select 發生互動,當最近的一條sql語句沒有涉及任何行的時候,則返回true。否則返回false。這樣的語句在實際應用中,是非常有用的。例如要update一行資料時,如果沒有找到,就可以作相應...

oracle資料庫中sql notfound的用法

sql notfound 是乙個布林值。與最近的sql語句 update,insert,delete,select 發生互動,當最近的一條sql語句沒有涉及任何行的時候,則返回true。否則返回false。這樣的語句在實際應用中,是非常有用的。例如要update一行資料時,如果沒有找到,就可以作相應...