게시물 작성중에 최근 등록한 사람 아이디별로 노출하기
조회 2,484 2026-08-18 등록
로그인하면 의견을 남길 수 있습니다.
아직 의견이 없습니다. 첫 의견을 남겨보세요.
게시글
카테고리가 있는 게시판에서 최근글만 뽑아오는 방법
board 테이블이름 idx_code -> 고유값 b_cate -> 카테고리 b_title -> 게시판명 b_content -> 게시판내용 wdate -> 작성일 하나의 테이블에 카테고리가 여러게 존제하는경우가 있다 이때 각 카테고리별로 최근 글 1개씩만 호출하는 지리문이다 select * from board where 1 and idx_code in (select max(idx_code) from board group by b_cate) order by idx_code desc 서브쿼리를 사용한다 select max(idx_code) from board group by b_cate 카테고리내의 가장큰 값만 호출한다 select * from board where 1 and idx_code in (가장큰값들) order by idx_code desc 그리고 가장큰 값들을 가진 내용만 선택한다
서브쿼리 내용호출할때 사용 댓글수 많은것 순으로 정렬
select *,( select count(*) from table2 where 1 and table1.idx.code=table2.sidx_code //상위에 해당하는내용과 서브에 해당하는 내용을 일치시켜서 갯수호출함 group by sidx_code ) as count //count로 카운트 갯수를 표기함 from table1 where 1 order by count //전체 적인 지리문을 정렬함 첫번째 테이블 table1 두번째 테이블 table2 table1.idx_code값은 table2.sidx_code값과 동일함 sidx_code값은 여러게 존제함
임으로 정렬하기 order by field ( 컬럼명, "순서1", "순서2",......
정렬하는 방법은 여러방법이 있다 그중에 유용한 정렬방법이다 select * from tablename where idx_code in (3,4,1) order by field (idx_code, 1, 4, 3); idx_code 내용을 1,4,3 순으로 정렬하고자 할때 사용하면 편하다
2개이상 중복되는 내용을 검색하는 지리문 having
2개이상 중복되는 데이터를 뽑아와야 하는경우가 있다 예를 들어 결제 내역중에 2번이상 결제한 사람을 뽑아오는 경우가 그렇다 select *, count(*) as count1 from 테이블명 where 1 group by 회원아이디필드 having count1 > 2 이렇게 하면 2번이상인 경우를 검색할수 있다
rand()함수로 랜덤하게 정렬하기,select 내용를 랜덤으로 정렬하기
해당 레코드를 순서에 상관없이 랜덤으로 정렬할때는 select * from tablename order by rand() limit 0, 5 이렇게 하면 5개를 랜덤으로 정렬할수 있다 다른 정렬방식으로 최근게시글중 5개를 가저온다은에 그것을 랜던으로 호출하는 방법이다 예를 들어 idx_code -> 1,2,3,4,5,6,7,8,9,10 중에 10,9,8,7,6를 가저온후에 10~6까지를 랜덤으로 불러오는방법이다 (select * from tablename order by idx_code desc limit 0, 5) order by rand()
count(distinct(user_id)) 여기에 추가적인 if문을 넣는경우
select count(distinct if(user_age>20,user_id,null) ) as count1 "; user_age > 20 이면서 user_id가 중복제거한 갯수를 가져오는 지리문
group by 내에서 그룹으로 묶은 것에 대한 정렬하는 방법
select * from tablename as p where 1 and sidx_code in ( select max(sidx_code) from tablename where 1 and sidx_code=p.sidx_code ) group by p_title 위에 있는 필드 값을 접근하기 위해서는 위에 as p로 하고 p.sidx_code로 접근하면 된다.
특정문자를 찾아서 교체하기
update tablename set content=replace(content,'이문구를','이문구로 바꿈') content필드의 내용중에 '이문구를'->'이문구로 바꿈' 교체할때 사용한다
의견 0
로그인하면 의견을 남길 수 있습니다.
아직 의견이 없습니다. 첫 의견을 남겨보세요.