2013-08-14 4 views
0

테이블SQL 선택 쿼리

메뉴 : UID 이름 START_DATE stop_date 가격 xdele의 last_editor, last_editor_Ip LAST_EDIT_DATE 및 버전

MENU_ITEMS : UID, ref_menu의 ref_menu_version의 ref_type의 ref_item ref_item_version 위치 xdele last_editor, last_editor_ip last_edit_date 및 버전

제품 : UID 이름 설명 가격 수량 id_um의 ref_image xdele last_editor, last_editor_ip, LAST_EDIT_DATE 및 버전

PRODUCT_GROUPS : UID 이름 설명 ref_Menu ref_menu 버전

분류 위의 다른 사람 : uid ref_product ref_product_version ref_group 및 ref_group_version

SO : 분류 표는 제품을 제품 그룹에 통합합니다. 각 메뉴에는 해당 테이블의 메뉴 항목이 있습니다. 메뉴에서 모든 제품을 가져 오는 select 쿼리가 필요합니다 (ref_type은 제품 인 경우 0, 제품 그룹 인 경우 1). 개별 제품이라면 모든 제품을 구입할 수 있지만 (ref_type = 0), 그룹에 속해 있다면 그 제품을 가져 오는 방법을 모릅니다.

감사합니다.

+0

나는 그것을 java에서했지만 SQL로 해보고 싶다. 어떻게 해야할지 모르겠다. –

+0

어떤 DBMS 용? 오라클, MySQL ...? 쿼리가 매우 다를 수 있습니다 – Vargan

+0

데이터베이스가 PostgreSQL입니다 –

답변

0

MENUS 및 MENU_ITEM에 가입해야합니다. PostgreSQL에서는 강하지가 않으므로 구문이 작동하지 않아야합니다.

SELECT <what you need> 
FROM MENUS, MENU_ITEM, PRODUCTS 
WHERE MENUS.uid = MENU_ITEM.UID 
    AND MENUS.uid = PRODUCT.UID 
    AND MENU_ITEM.ref_id = 1 

이 필요한 것입니다, 또는 나는 당신의 질문을 오해 : 비슷한 시도?

+0

이것은 메뉴 항목을 메뉴에 연결하는 방법입니다. menuitems ref_item에 의해 주어진 메뉴에있는 제품이 필요합니다. 문제는 제품이 개별적이든 그룹이든 관계없이 어떻게 제품을 얻는가입니다. –

+0

조인에 PRODUCTS 테이블을 추가하고 uid를 다시 확인하지 못합니까? – Vargan

+0

나는 대답을 편집했습니다 – Vargan