나의 수업일지

인천 일보 아카데미 29일차 / 페이징(limit) / 게시판의 구성 / DB의 행동 구조

2023. 4. 3. 16:43
  • 풀어보기 - DB입장에서 보기

-- 2. 이메일 중복체크 
-- 기존 가입되어 있지 않은 이메일로 가입하려고 한다면
select member_email from member_table 
	where member_email = 'member_email7'; -- 멤버 컬럼에 없음
-- 기존 가입된 이메일로 가입하려고 한다면
select member_email from member_table 
	where member_email = 'member_email0'; -- 멤버 컬럼에 있음
    

-- 6. 회원정보 수정화면 요청 
select * from member_table 
	where member_email = 'member_email3'; -- 특정 회원의 정보를 가져오고
-- 7. 회원정보 수정 처리(비밀번호 변경)
update member_table set member_password = '9999' where di = 5; -- 업데이트

DB입장에서 보면 java와 많이 다른데 DB에서는 정보를 받고 제약 조건에 걸리지만 않는다면 저장하기 때문이다

DB에서는 가공이나 정보 수정과 같은것이 이루어지지 않기 때문에 java와 차이가 있다

 

 

 

-- 2번 회원이 파일있는 자유게시판 글 2개 작성
insert into board_file_table ( original_file_name , stored_file_name , board_id)
		values('륑냐흠' , '45747444릥냐흠' , 7);
insert into board_table
	(board_title , board_writer , board_contents , member_id , category_id , board_file_attached)
		values('륑냐흠' , '타우린' , '제곧내' , 7 , 1 , 5);

insert into board_file_table ( original_file_name , stored_file_name , board_id)
		values('얍엽욥' , '45747444얍' , 7);
insert into board_table
	(board_title , board_writer , board_contents , member_id , category_id , board_file_attached)
		values('얍엽욥' , '타우린' , '제곧내' , 7 , 1 , 5);
        
        
-- 2.4 목록 조회시 카테고리 이름도 함께 나오게 조회
select b.* , c.category_name
		from board_table b , category_table c
			where b.category_id = c.id order by b.id asc;

DB의 입장에서 보면 파일도 올라가고 게시글도 작성되어야 한다 (2가지의 쿼리가 필요하다)

단, 어떤 게시글에 올라간 파일인지 알아야하기 때문에 fk받는 id번호가 있어야한다.

 

 

 

-- 3. 댓글 좋아요 
-- 3.1. 1번 회원이 2번 회원이 작성한 댓글에 좋아요 클릭

-- 좋아요 하기 전 체크
select id from good_table where comment_id=2 and member_id =1;
-- 좋아요 한적이 없다면 좋아요
insert into good_table(comment_id , member_id)
		values(2 , 1);
-- 좋아요 한적이 있다면 좋아요 취소
delete from good_table where id =1;


-- 4. 댓글 조회시 좋아요 갯수도 함께 조회
select c.* , count(g.comment_id) as '좋아요' from comment_table c ,good_table g 
		where c.id = g.comment_id 
			group by id ;

 

 

  • 페이징_limit

-- 7.1. 첫번째 페이지
select * from board_table order by id desc limit 0,3;
-- 7.2. 두번째 페이지 
select * from board_table order by id desc limit 3,3;
-- 7.3. 세번째 페이지 
select * from board_table order by id desc limit 6,3;

-- 8.3 검색결과 페이징 처리 
select * from board_table 
	where board_contents = '제곧내' 
		order by board_created_time 
			desc limit 0,3;
            
contents가 제곧내인 기준으로 검색하여 작성 시간을 기준으로 내림차순
페이징으로 0(0+1)번째 부터 3개를 출력

페이징 할 때 시작수부터 출력해줄 행의 갯수를 지정하는데
앞열은 java의 배열과 마찬가지로 0부터 인덱스 번호가 새로 붙는다
그렇기 때문에 3,3이라고 한다면 3+1 인 4번째부터 3개를 출력해준다

 

 

'나의 수업일지' 카테고리의 다른 글

인천 일보 아카데미 31일차 -1- / frontend_간단한 구성요소 / html - 문법 /html - 파일 구조 / 요소 - 블록 , 인라인 / 상대경로,절대경로 / 선택자(selector)  (0) 2023.04.05
인천 일보 아카데미 30일차 / 문자 합치기(CONCAT)_자르기 (LEFT , RIGHT , SUBSTR), CASE_END 사용 , View / Index , commit / rollback  (0) 2023.04.04
인천 일보 아카데미 28일차 - table 구조 변경 alter / ERD보는법  (0) 2023.03.31
인천 일보 아카데미 27일차-1- 참조관계 / 참조관계-특징 / 참조관계 - 제약조건 / pk-fk  (0) 2023.03.31
인천 일보 아카데미 27일차 -2- ERD란 ? / ERD 만들어보기  (0) 2023.03.30
'나의 수업일지' 카테고리의 다른 글
  • 인천 일보 아카데미 31일차 -1- / frontend_간단한 구성요소 / html - 문법 /html - 파일 구조 / 요소 - 블록 , 인라인 / 상대경로,절대경로 / 선택자(selector)
  • 인천 일보 아카데미 30일차 / 문자 합치기(CONCAT)_자르기 (LEFT , RIGHT , SUBSTR), CASE_END 사용 , View / Index , commit / rollback
  • 인천 일보 아카데미 28일차 - table 구조 변경 alter / ERD보는법
  • 인천 일보 아카데미 27일차-1- 참조관계 / 참조관계-특징 / 참조관계 - 제약조건 / pk-fk
GUPING
GUPING
안녕하세요 개발자를 꿈꾸는 GUPING 입니다
GUPING
개발자를 꿈꾸는 GUPING
GUPING
전체
오늘
어제
  • 분류 전체보기 (89)
    • 나의 수업일지 (88)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 다중프리뷰
  • 파일 이름 가져오기
  • 틀만들기
  • naver
  • 버튼 이벤트 함수 변경
  • 검색결과페이징
  • 지식인
  • 클래스 이름 변경
  • Ajax
  • 여러사진프리뷰
  • 업로드파일이름출력
  • realative
  • 로그인 경고문
  • 페이징Controller
  • 로그인게시판
  • 개힘드렁
  • 삭제
  • 버튼2가지이벤트
  • 파일이름가져오기
  • pagingAjax
  • 버튼 이벤트 변경
  • PAGE
  • 검색
  • 답변 채택
  • 네이버
  • 파일이름(다중)
  • Paging
  • 페이징
  • 수정
  • 로그인form

최근 댓글

최근 글

hELLO · Designed By 정상우.
GUPING
인천 일보 아카데미 29일차 / 페이징(limit) / 게시판의 구성 / DB의 행동 구조
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.