반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- Database
- unity 레이아웃
- final
- 메소드 정의
- unity 오브젝트
- 타입 변수 표기법
- ForignKey
- 평면좌표상에서 두점 거리 구하기
- DROP
- Create
- @ Builder
- spring
- unity 간단 설정
- 데이터베이스
- 메소드 지정자
- C#
- JDBC
- 타입이 서로 다른 두 데이터 제네릭
- request
- static을 왜사용할까?
- WriteLine
- db
- MariaDB
- c#상속
- response
- static
- java
- 요청
- http
- select
Archives
- Today
- Total
이론을 싫어!
[DB] DB 내장함수 에서 비번 앞 두자리 외에 *처리 하기(Mariadb) 본문
반응형
예시) 비밀먼호 앞 두자리 외에 *처리 하기
concat 함수 (문자열을 연결하고 싶을 때 사용)
concat 함수는 어떤 DBMS냐에 따라 매개변수를 두 개만 받기도 하고
여러개를 허용해주기도 하기 때문이다.
위의 사진 SQL문을 보게 되면
CONCAT(SUBSTRING(password,1,2,),'**') 을 볼수 있는데
SUBSTING 은 데이터를 일부 읽어온다는 뜻을 가지고 있다.
즉, password 데이터를 1에서 2까지 만 일거오고 나머지 뒤에 문자열 ** 붙이겠다는 뜻을 가지고 있다.
실행을 하게 되면 위의 사진처럼 나오는 걸 볼수 있다.
근데 여기서 문제점은 비밀번호가 없는데 ** 출력되는걸 볼수 있다.
여기서 비밀번호가 없는 곳은 출력이 되지 않게 하기 위해서ㅡㄴ
CASE WHEN 을 쓰면된다.
CASE WHEN은 조건에 따라 값을 주는건데 자바로 따지면 if, else if,else 라고 생각하면된다.
기본 문법은
1
2
3
4
5
|
CASE 컬럼명
WHEN 조건1 THEN 값1
WHEN 조건2 THEN 값2
ELSE 값3
END
|
cs |
컬럼이 조건1 일때는 값1을, 조건2 일때는 값2을 반환하고 조건에 맞지 않으면
값3 을 반환하는 것이다.
위의 사진의 SQL문을 보면 조건이 password길이가 2이상임녀 concat(substring(password,1,2),'**')이고
조건에 해당하지 않으면 ''을 출력하라는 것이다.
위의 SQL문을 실행하게 된다면
위의 사진처럼 password 길이가 2이상인 데이터만 출력이 되는 것을 알수 있다.
'Database' 카테고리의 다른 글
[DB] View 테이블(Mariadb) (0) | 2023.04.03 |
---|---|
[DB] 데이터 표시 포멧(날짜->문자열/문자열->날짜)(Mariadb) (0) | 2023.03.14 |
[DB] 테이블이 무엇이며 생성을 해봅시다~(Mariadb)(DBeaver) (0) | 2023.03.14 |
[DB]UPDATE 를 해봅시다~!!(MariaDB) (2) | 2023.03.14 |
[DB] SELECT 데이터 조회를 해봅시다. (0) | 2023.03.14 |