사용 OS : WIN10 PRO 

사용프로그램 : MSSQL 2014

---------------------------------------------------------------

무한카테고리를 생성하고 각 언어(한국/중국/일본/영어)별 카테고리별 등록하는데 까지 진행완료 했어요.


--카테고리 데이터
---------------------------------------------

GO

SET ANSI_PADDING OFF

GO

SET IDENTITY_INSERT [dbo].[category] ON 


INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (1, N'컴퓨터', 1, 1, 0)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (2, N'가전', 1, 2, 0)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (3, N'스포츠', 1, 3, 0)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (4, N'자동차', 1, 4, 0)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (5, N'여행', 1, 5, 0)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (6, N'노트북', 2, 1, 1)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (8, N'삼성노트북', 3, 1, 6)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (9, N'엘지노트북', 3, 2, 6)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (10, N'S01341

', 4, 1, 8)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (11, N'L01342

', 4, 2, 9)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (12, N'15

', 5, 1, 10)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (13, N'13

', 5, 2, 11)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (14, N' 냉장고


', 1, 2, 2)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (15, N'삼성냉장고

', 3, 1, 14)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (16, N'지펠

', 4, 1, 15)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (17, N'2019년형

', 5, 1, 16)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (18, N'축구


', 2, 1, 3)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (19, N'축구화


', 3, 1, 18)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (20, N'나이키

', 4, 1, 19)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (21, N'아디다스

', 4, 2, 19)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (22, N'성인용

', 5, 1, 20)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (23, N'어린이용

', 5, 2, 21)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (24, N'현대


', 2, 1, 4)

INSERT [dbo].[category] ([CateID], [CateName], [Depth], [DisplaySeq], [ParentID]) VALUES (25, N'가솔린차

', 3, 1, 24)

SET IDENTITY_INSERT [dbo].[category] OFF


go


--category 테이블

------------------------------------------------

CREATE TABLE [dbo].[category](

[cateID] [int] IDENTITY(1,1) NOT NULL,

[CateName] [nchar](100) NOT NULL,

[depth] [int] NOT NULL CONSTRAINT [DF_category_depth]  DEFAULT ((1)),

[DisplaySeq] [int] NULL,

[parentID] [int] NOT NULL CONSTRAINT [DF_category_ParentID]  DEFAULT ((0)),

[lang] [nvarchar](5) NOT NULL,  

 CONSTRAINT [PK_category] PRIMARY KEY NONCLUSTERED 

(

[cateID] ASC,

[parentID] ASC,

[lang] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]


GO


이 카테고리에 현재까지 5단계까지 있는데 
각 단계별 detail 제품을 입력하려 합니다.

이때 제품 테이블은 아래와 같이 설계했어요. 


--product 테이블

CREATE TABLE [dbo].[Product](

[prNum] [int] IDENTITY(1,1) NOT NULL,

[prTitle] [varchar](255) NULL,

[prSSN] [nchar](50) NULL,

[prIntro] [varchar](1000) NULL,

[prMainimg] [nvarchar](255) NULL,

[prMainimgOrg] [nvarchar](255) NULL,

[prContent] [ntext] NULL,

[prfile1] [nvarchar](255) NULL,

[prfile2] [nvarchar](255) NULL,

[prfile3] [nvarchar](255) NULL,

[prfile4] [nvarchar](255) NULL,

[prlink1] [nvarchar](255) NULL,

[prlink2] [nvarchar](255) NULL,

[flag] [char](1) NULL CONSTRAINT [DF_Shop_flag]  DEFAULT ((0)),

[parentID] [int] NOT NULL,

[cateID] [int] NOT NULL,

 CONSTRAINT [PK_Product] PRIMARY KEY CLUSTERED 

(

[prNum] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]


GO


질문1) 제품등록 할 때 1,2 단계에서 입력되는것도 있고

         5단계까지 가서 입력하는것도 있는데 이 때 

         어떻게 입력되어야 나중에 제품리스트에서 

         해당 목록을 검색할 수 있는지요? (cateID만 입력해주면 되는지 아니면 parentID 까지 입력해줘야 하는지 모르겠어요.ㅜㅜ)

질문2) 이렇게 입력되었을때 제품리스트에서 각 단계별로 선택박스 선택하면 해당 목록이 뿌려지게 하는겁니다.


select * from category c join Product p

on c.cateID=p.parentID 

where c.lang='kr' and c.depth=1 



드롭다운 카테1단계 | 드롭다운 카테2단계 | 드롭다운단 카테3단계 | 드롭다운 카테4단계 |  <=선택박스


No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 34983
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 17248
10603 쿼리 질문입니다. [1] 희망나라 2020.06.12 552
10602 조건에 따라 Sum값을 - 로 표시하고 싶습니다. [1] hsp-user 2020.06.10 458
10601 데이터베이스 컬럼에 관한 질문입니다 [2] 병든토끼 2020.06.04 511
10600 스토어드 프로시저 내에서 동적쿼리, 동적쿼리 내에서 스토어드 프로시저? [4] 남중남고군대공대 2020.06.03 603
10599 DataBase 병합 방법 안돼요 2020.06.02 458
10598 쿼리문이 오래 걸리는 이유 [1] 풍란올 2020.06.01 864
10597 SQL SERVER 2008 R2 STAND 버전에서의 감사 관련 질문입니다. 김삐씨 2020.05.28 461
10596 sql 질문입니다. 테이블 보고 문제 만들기 markiscapable 2020.05.28 445
10595 각 제품의 카테고리별로 가격이 비싼 제품을 알려고합니다. markiscapable 2020.05.28 403
10594 중첩 JOIN문 질문드립니다. [1] smyoon 2020.05.26 588
10593 SQL2005 -> SQL2016 마이그레이션 관련 질문 오희택 2020.05.25 463
10592 SP 실행중 lock이 발생하는데 SSMS에서 발생했다고 나오는데 모르겠습니다. 나노큐브 2020.05.25 474
10591 SQL BIND 변수 질문입니다. [1] 마이노키 2020.05.24 441
» 무한카테고리 설계와 제품등록 [5] 다자녀아빠 2020.05.22 758
10589 SQL 서버 트렌젝션 로그와 서버의 성능 상관 관계의 문의 [1] lyn1216 2020.05.21 402
10588 SQL 서버 user cal 수와 접근 컨넥션의 관계 질문드립니다. [1] lyn1216 2020.05.21 421
10587 SQL 초보입니다 살려주세요 [1] 마이노키 2020.05.21 457
10586 datepart 로 연도별 월 카운트를 하려고합니다 [1] zkdkdktm 2020.05.20 510
10585 다국어 버전 DB 질문 [2] 장어 2020.05.12 879
10584 SELECT 와 SP를 사용했을떄 속도 차이가 큰가요? [2] 마에스트로 2020.05.08 658





XE Login