CI 묻고 답하기

제목 SQL 질문
글쓴이 JAMESJAMES 작성시각 2016/05/29 22:01:08
댓글 : 1 추천 : 0 스크랩 : 0 조회수 : 13095   RSS

안녕하세요?

초보라서... 참 힘드네요. ㅠㅠ

 

2개 테이블을 만들었습니다.

- Categories (category_id, category_name) 

- Products (product_id, category_id, product_name)

 

그리고 아래와 같이 각 URL을 접속했을 때 각 카테고리에 해당하는 제품들만 나오게 하고 싶습니다.

aaa category (example.com/aaa)bbb category (example.com/bbb) ccc category (example.com/ccc)ddd category (example.com/ddd)eee category (example.com/eee)

 

잘 몰라서...

select * from categories AS c,products AS p where c.category_id=p.category_id 이정도까지 해서 실행하니 아쉽게도 모든 제품명이 모든 URL에서 보이네요.

어떻게 하면 되나요?고수님들 부탁드립니다.

감사합니다.

 

 

 다음글 MySQL 문자 정렬 문제 (6)
 이전글 왕초보가 고수님들께 질문드립니다. (17)

댓글

배강민 / 2016/05/30 07:43:08 / 추천 2

#01. aaa, bbb, ccc, ddd 카테고리의 상품만 보고 싶은 거라면 php, ci를 떠나서 어떻게 쿼리를 짜야할까요?

#02. select * from categories AS c,products AS p where c.category_id=p.category_id 이 쿼리는 카테고리 테이블의 key를 가진 모든 상품이 나오는게 당연한 쿼리가 아닐까요?

#03. aaa의 카테고리의 상품만 원한다면 where c.category_id = p.category_id 뒤에 c.category_id = 'aaa' 또는 p.category_id = 'aaa' 가 있어야 하지 않을까요? (실제로는 더 빠른 쿼리를 위해서는 좀 더 복잡해지긴 합니다.)

#04. 그렇다면, URL의 aaa, bbb, ccc, ddd 를 어떤 방법으로던 받아서 쿼리에 추가해야하지 않을까요?

#05. 여기까지 이해하셨다면, CI를 무시하고서라도 순수 PHP로도 구현이 가능하게끔 만들어 보시기 바랍니다. 순수 PHP로는 성공을 했는데, CI에서 일반적으로 사용되는 방법을 문의하신다면 답변을 드릴 수 있겠지만, 해당 질문은 제목은 "SQL 질문" 이긴하지만, CI 질문도, PHP 질문도 아니고, SQL 질문인듯도 하면서 아닌듯도 하네요.