[완료] mysql query 에서 이름으로 sorting 하는것입니다.
글쓴이: lovethecorners / 작성시간: 수, 2007/08/29 - 11:29오후
예전에 다른 사람이 만들어놓은 프로그램에 substring_index써서 이름을 sort하면 사용했습니다.
"select a.rep from users_at_mail_time a, admins b where (a.rep='' or a.rep=b.userID) and (a.mailing >=$back1mail and a.mailing <= $l_mail) group by a.rep order by substring_index(b.name,' ', -1) asc"
name field를 first name과 last name으로 나눠 사용했으면 문제가 없는데, 처음 만들때 그냥 name field하나로 full name을 사용했었습니다. 그러나 위와 같이 사용하면서 문제는 없었습니다.
그런데 며칠전에 "Liliana Del Toro"라는 사람이 새로 입사하면서 약간의 문제가 생겼습니다. 이사람의 라스트네임은 "D"부터 시작하는데 위의 query는 "T"부터 시작하는것으로 간주를 해버립니다. 그래서 라스트네임이 "D"로 시작하는 사람들 구룹에 들어가야 하는데, 엉뚱하게 "T"로시작하는 구룹에 들어가게 됩니다.
위의 query를 변형해서 사용할수있을까요?
Forums:
자답입니다.
음, query로는 어떻게 해야할지 몰라서 그냥 query에서 받아온 userid를 가지고 제일 처음 letter빼서 맨뒤로 보내다음 sort를 해버렸습니다.
그러니까, userid 형식이 "dbrown" 이런식입니다. 문제가 되었던 사원의 userid가 "ldeltoro" 이기때문에 맨처음 글자를 뒤로 보내고 그러니까 "deltoro-l" 이런형식이 되죠. sort 후에 다시 맨뒤의 글자를 앞으로 보내는식입니다....
이거 글로 쓰려니까 횅설수설이 되네요...
==
more than one way to do it
말로만 블로거: http://gojdweb.egloos.com
댓글 달기