Condivisione della tecnologia

funzione inversa nell'alveare

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Prefazione

La funzione inversa è una funzione di elaborazione delle stringhe di uso comune disponibile in molti linguaggi di programmazione. Durante lo sviluppo recente, ho riscontrato la necessità di risolvere il problema al contrario, ho scoperto di non averlo ancora riassunto, quindi ho compensato.

Introduzione alle funzioni di base

SELECT reverse(string_column) FROM table_name;
  • 1

Esempio:

SELECT reverse('hello world');
  • 1

Il risultato è:
dlrow olleh

Combattimento reale

Attualmente sono presenti tre campi: ID utente, nome utente e combinazione ID interesse. Il requisito attuale è ottenere l'ultimo di ciascuna combinazione utente e ID interesse;

Implementazione:

with temp_test as 
(
    select '1458963' as userid ,'小花'  as  user_name ,'[1,5,8]' as favsid
    union all 
    select '1258963' as userid ,'小明'  as  user_name ,'[3,7,9,10]' as favsid 
    union all  
    select '3245895' as userid ,'小翠'  as  user_name ,'[]' as favsid  
)


select 
userid
,user_name
,reverse(split(favsid,'\,')[0]) as favsid
from  
(select 
userid
,user_name
,regexp_replace(reverse(favsid),'\[|\]','') as favsid
from  temp_test
) tt 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

Il risultato è il seguente:

ID utentenome utentepreferito
1458963fiorellino8
1258963XiaoMing10
3245895Xiao Cui