본문 바로가기
통계프로그램 비교 시리즈/오라클함수 비교(R & Python)

UPPER 오라클 함수 [Oracle, Pandas, R Prog, Dplyr, Sqldf, Pandasql, Data.Table, DuckDB]

by 기서무나구물 2021. 12. 30.

포스팅 목차

    * 파이썬 & R 패키지 호출 및 예제 데이터 생성 링크


    [ UPPER Oracle Function ]

     


    UPPER함수는 지정한 문자열(“char”)의 모든 영문자를 대문자로 변환한다. 인수 char의 데이터 형은 datatypes CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, NCLOB이다. 반환값은 char과 같은 데이터형이다.

     

     

     

     


    1. Oracle(오라클)

     

    UPPER() 함수

    Upper 함수를 사용하여서 문자열 'Large'의 모든 문자를 대문자로 치환한다.

     

    Oracle Programming
    SELECT UPPER('Large') Uppercase 
    FROM   DUAL;

     

    Results
    UPPERCASE
    ----------
    LARGE

     


    2. Python Pandas(파이썬)

     

    str.upper() 함수

    str.upper() : 사원 이름을 대문자로 변경하여 반환한다.

     

    Python Programming
    withmooc = copy.copy(emp)
    
    withmooc['ename_low'] = withmooc['ename'].str.lower()      # 소문자로 변경
    withmooc['ename_up']  = withmooc['ename_low'].str.upper()
    withmooc.head(7)

     

    Results
    	empno	ename	job		mgr	hiredate	sal	comm	deptno	ename_low	ename_up
    0	7369	SMITH	CLERK		7902.0	1980/12/17	800	NaN	20	smith		SMITH
    1	7499	ALLEN	SALESMAN	7698.0	1981/02/20	1600	300.0	30	allen		ALLEN
    2	7521	WARD	SALESMAN	7698.0	1981/02/22	1250	500.0	30	ward		WARD
    3	7566	JONES	MANAGER		7839.0	1981/04/02	2975	NaN	20	jones		JONES
    4	7654	MARTIN	SALESMAN	7698.0	1981/09/28	1250	1400.0	30	martin		MARTIN
    5	7698	BLAKE	MANAGER		7839.0	1981/03/01	2850	NaN	30	blake		BLAKE
    6	7782	CLARK	MANAGER		7839.0	1981/01/09	2450	NaN	10	clark		CLARK

     

     


    3. R Programming (R Package)

     

    str.upper()  함수

    str.upper() : 사원 이름을 대문자로 변경하여 반환한다.

     

    R Programming
    %%R
    
    withmooc<-emp
    
    withmooc['ename_low'] = tolower(withmooc$ename)      # 소문자로 변경
    withmooc['ename_up']  = toupper(withmooc$ename_low)
    
    withmooc[1:10, ]

     

    Results
    # A tibble: 10 x 10
       empno ename  job         mgr hiredate     sal  comm deptno ename_low ename_up
       <dbl> <chr>  <chr>     <dbl> <date>     <dbl> <dbl>  <dbl> <chr>     <chr>   
     1  7369 SMITH  CLERK      7902 1980-12-17   800    NA     20 smith     SMITH   
     2  7499 ALLEN  SALESMAN   7698 1981-02-20  1600   300     30 allen     ALLEN   
     3  7521 WARD   SALESMAN   7698 1981-02-22  1250   500     30 ward      WARD    
     4  7566 JONES  MANAGER    7839 1981-04-02  2975    NA     20 jones     JONES   
     5  7654 MARTIN SALESMAN   7698 1981-09-28  1250  1400     30 martin    MARTIN  
     6  7698 BLAKE  MANAGER    7839 1981-03-01  2850    NA     30 blake     BLAKE   
     7  7782 CLARK  MANAGER    7839 1981-01-09  2450    NA     10 clark     CLARK   
     8  7788 SCOTT  ANALYST    7566 1982-12-09  3000    NA     20 scott     SCOTT   
     9  7839 KING   PRESIDENT    NA 1981-11-17  5000    NA     10 king      KING    
    10  7844 TURNER SALESMAN   7698 1981-09-08  1500     0     30 turner    TURNER  

     

     

     


    4. R Dplyr Package

     

    base::toupper 함수 와 stringr::str_to_upper 함수

    base::toupper 함수 / stringr::str_to_upper 함수 : 사원 이름을 대문자로 변경하여 반환한다.

     

    R Programming
    %%R
    
    emp %>%
      dplyr::mutate( ename_low   = tolower(ename)                    , 
                     ename_low_1 = stringr::str_to_lower(ename)      ,
                     ename_up    = base::toupper(ename_low)          , 
                     ename_up_1  = stringr::str_to_upper(ename_low_1),
                   ) %>%
      dplyr::select(-c(job,hiredate,sal,comm)) %>%
      head()

     

    Results
    # A tibble: 6 x 8
      empno ename    mgr deptno ename_low ename_low_1 ename_up ename_up_1
      <dbl> <chr>  <dbl>  <dbl> <chr>     <chr>       <chr>    <chr>     
    1  7369 SMITH   7902     20 smith     smith       SMITH    SMITH     
    2  7499 ALLEN   7698     30 allen     allen       ALLEN    ALLEN     
    3  7521 WARD    7698     30 ward      ward        WARD     WARD      
    4  7566 JONES   7839     20 jones     jones       JONES    JONES     
    5  7654 MARTIN  7698     30 martin    martin      MARTIN   MARTIN    
    6  7698 BLAKE   7839     30 blake     blake       BLAKE    BLAKE     

     

     


    5. R sqldf Package

     

    upper() 함수

    Upper 함수를 사용하여서 문자열 'Large'의 모든 문자를 대문자로 치환한다.

     

    R Programming
    %%R
    
    sqldf(" SELECT UPPER('Large') Uppercase ")

     

    Results
      Uppercase
    1     LARGE

     

     

     


    6. Python pandasql Package

     

    upper() 함수

    Upper 함수를 사용하여서 문자열 'Large'의 모든 문자를 대문자로 치환한다.

     

    Python Programming
    ps.sqldf(" SELECT UPPER('Large') Uppercase ")

     

    Results
    	Uppercase
    0	LARGE
     

     


    7. R data.table Package

     

    toupper() 함수와 stringr::str_to_upper() 함수

    R Programming
    %%R
    
    DT          <- data.table(emp)
    dept_DT     <- data.table(dept)
    
    DT[, `:=`( ename_low   = tolower(ename)     , 
               ename_low_1 = stringr::str_to_lower(ename))]
    DT[, `:=`( ename_up    = toupper(ename_low) , 
               ename_up_1  = stringr::str_to_upper(ename_low_1))][, c("job","hiredate","mgr"):=NULL]

     

    Results
        empno  ename  sal comm deptno ename_low ename_low_1 ename_up ename_up_1
     1:  7369  SMITH  800   NA     20     smith       smith    SMITH      SMITH
     2:  7499  ALLEN 1600  300     30     allen       allen    ALLEN      ALLEN
     3:  7521   WARD 1250  500     30      ward        ward     WARD       WARD
     4:  7566  JONES 2975   NA     20     jones       jones    JONES      JONES
     5:  7654 MARTIN 1250 1400     30    martin      martin   MARTIN     MARTIN
     6:  7698  BLAKE 2850   NA     30     blake       blake    BLAKE      BLAKE
     7:  7782  CLARK 2450   NA     10     clark       clark    CLARK      CLARK
     8:  7788  SCOTT 3000   NA     20     scott       scott    SCOTT      SCOTT
     9:  7839   KING 5000   NA     10      king        king     KING       KING
    10:  7844 TURNER 1500    0     30    turner      turner   TURNER     TURNER
    11:  7876  ADAMS 1100   NA     20     adams       adams    ADAMS      ADAMS
    12:  7900  JAMES  950   NA     30     james       james    JAMES      JAMES
    13:  7902   FORD 3000   NA     20      ford        ford     FORD       FORD
    14:  7934 MILLER 1300   NA     10    miller      miller   MILLER     MILLER

     


    8. Python Duckdb의 SQL

     

    Upper() 함수

     

    Python Programming
    %%sql
      SELECT UPPER('Large') Uppercase

     

    Python Programming
    SELECT UPPER('Large') Uppercase

     

    Results
      Uppercase
    0     LARGE

     


    https://unsplash.com/photos/SjN3x8aqe-w

      --------------------------------------------  

     

     

    [Oracle, Pandas, R Prog, Dplyr, Sqldf, Pandasql, Data.Table] 오라클 함수와 R & Python 비교 사전 목록 링크

     

    오라클 SQL 함수(Oracle SQL Function) 목록 리스트 링크

     

    [SQL, Pandas, R Prog, Dplyr, SQLDF, PANDASQL, DATA.TABLE] SQL EMP 예제로 만나는 테이블 데이터 처리 방법 리스트 링크 링크
    반응형

    댓글