sql 쿼리 질문

qw3709의 이미지

if((select(length(max(flag)))from(prob13password))in(4),1,2)
이쿼리랑
if((select(max(length(flag)))from(prob13password))in(20),1,2)
이쿼리 차이가뭐죠

컬럼flag에는 값이 2개가있는데 가장긴 문자열길이가 20이고 짧은게 4입니다
max와 length가 위치가바꼈을때의 차이가 궁금합니다

Rap1er의 이미지

max 함수는 "abcdefeeeeee" , "eee" 이렇게 flag 2개가 있을 때
"eee"가 max가 됩니다. 즉, 문자열에 각 문자를 비교하는거죠.
length 함수는 길이를 비교하는거구요.