๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋งฅ๋ฝ์—์„œ ํŽ˜์ด์ง€ ๋งค๊น€์€ ์งˆ์˜ ๊ฒฐ๊ณผ์˜ ๊ฒ€์ƒ‰ ๋ฐ ํ‘œ์‹œ, ๋” ๋‚˜์€ ๊ด€๋ฆฌ, ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ ํƒ์ƒ‰ ๋ฐ ํ‘œ์‹œ, ์‹œ์Šคํ…œ ์„ฑ๋Šฅ ์ตœ์ ํ™”์— ๊ตฌํ˜„๋˜๋Š” ์ค‘์š”ํ•œ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ํŽ˜์ด์ง€ ๋งค๊น€์€ ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ํ•œ ๋ฒˆ์— ํ•˜๋‚˜์”ฉ ์š”์ฒญํ•˜๊ณ  ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ํŽ˜์ด์ง€๋ผ๊ณ  ํ•˜๋Š” ๋” ์ž‘๊ณ  ๊ด€๋ฆฌ ๊ฐ€๋Šฅํ•œ ์ฒญํฌ ๋˜๋Š” ์„ธ๊ทธ๋จผํŠธ๋กœ ๋‚˜๋ˆ„๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ํ–ฅ์ƒ์‹œํ‚ฌ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์ด ๊ณผ๋ถ€ํ•˜ ์ƒํƒœ์—์„œ๋„ ํšจ์œจ์ ์ด๊ณ  ์‘๋‹ต์„ฑ์„ ์œ ์ง€ํ•˜๋„๋ก ํ•˜์—ฌ ๊ณ ์„ฑ๋Šฅ ๋ฐ ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ํŠนํžˆ AppMasterno-code ํ”Œ๋žซํผ์„ ํ™œ์šฉํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ํ•„์ˆ˜์ ์ธ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ๋ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์—์„œ ํŽ˜์ด์ง€ ๋งค๊น€์„ ๊ตฌํ˜„ํ•˜๋ ค๋ฉด SQL ์ฟผ๋ฆฌ๋ฅผ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์ ์šฉํ•˜๊ณ  ๊ฒฐ๊ณผ ์ง‘ํ•ฉ์„ ์กฐ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํŽ˜์ด์ง€ ๋งค๊น€์„ ๋‹ฌ์„ฑํ•˜๋Š” ์ผ๋ฐ˜์ ์ธ ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜๋Š” SQL ์ฟผ๋ฆฌ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋™์•ˆ OFFSET ๋ฐ LIMIT ์ ˆ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. OFFSET์€ ๋ ˆ์ฝ”๋“œ๋ฅผ ๊ฐ€์ ธ์™€์•ผ ํ•˜๋Š” ๊ฒฐ๊ณผ ์ง‘ํ•ฉ ๋‚ด์˜ ์‹œ์ž‘ ์ง€์  ๋˜๋Š” ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜๋Š” ๋ฐ˜๋ฉด LIMIT ์ ˆ์€ ๊ฐ€์ ธ์˜ฌ ์ตœ๋Œ€ ๋ ˆ์ฝ”๋“œ ์ˆ˜๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ํŽ˜์ด์ง€ ๋งค๊น€์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋˜ ๋‹ค๋ฅธ ์ธ๊ธฐ ์žˆ๋Š” ๋ฐฉ๋ฒ•์€ SQL Server์˜ ROW_NUMBER() ๋ฐ RANK(), Oracle์˜ ROWNUM, IBM DB2์˜ FETCH FIRST์™€ ๊ฐ™์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ จ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ํŽ˜์ด์ง€ ๋งค๊น€ ๋ฐฉ๋ฒ•์˜ ์„ ํƒ์ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ์˜ ์ „๋ฐ˜์ ์ธ ์„ฑ๋Šฅ๊ณผ ์‘๋‹ต์„ฑ์— ์ƒ๋‹นํ•œ ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์— ์œ ์˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. OFFSET์—๋งŒ ์˜์กดํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ ๋น„ํšจ์œจ์ ์ธ ํŽ˜์ด์ง€ ๋งค๊น€ ๋ฐฉ๋ฒ•์€ ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์ˆ˜ํ–‰๋˜๋Š” ์ž‘์—…๋Ÿ‰์„ ์ฆ๊ฐ€์‹œ์ผœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ฑ๋Šฅ์„ ์ €ํ•˜์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. OFFSET์ด ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ์ ์  ๋” ๋งŽ์€ ์ˆ˜์˜ ๋ ˆ์ฝ”๋“œ๋ฅผ ์ฝ๊ณ  ํ๊ธฐํ•ด์•ผ ํ•˜๋ฏ€๋กœ ๊ถ๊ทน์ ์œผ๋กœ ์ฟผ๋ฆฌ ์„ฑ๋Šฅ์ด ํฌ๊ฒŒ ์ €ํ•˜๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ•ด๋‹น๋˜๋Š” ๊ฒฝ์šฐ Keyset Pagination๊ณผ ๊ฐ™์€ ๋ณด๋‹ค ํšจ์œจ์ ์ธ ๋ฐฉ๋ฒ•๋ก ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. Keyset Pagination์€ ์ธ๋ฑ์‹ฑ๋œ ๊ณ ์œ  ์—ด์„ ์‚ฌ์šฉํ•˜๊ณ  WHERE ์ ˆ์˜ ์กฐ๊ฑด์„ ํ™œ์šฉํ•˜์—ฌ ๊ฒฐ๊ณผ๋ฅผ ๊ฐ€์ ธ์˜ค๋ฏ€๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ฑ๋Šฅ ์ธก๋ฉด์—์„œ ๋ณด๋‹ค ์ตœ์ ์˜ ์†”๋ฃจ์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

AppMaster no-code ํ”Œ๋žซํผ์„ ์‚ฌ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•  ๋•Œ ๊ฐœ๋ฐœ์ž๋Š” ๊ฐ•๋ ฅํ•˜๊ณ  ํšจ์œจ์ ์ธ ์†”๋ฃจ์…˜์„ ์ œ๊ณตํ•˜๋Š” ๋ฐ ์žˆ์–ด ํŽ˜์ด์ง€๋„ค์ด์…˜์ด ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•œ๋‹ค๋Š” ์ ์„ ๋†’์ด ํ‰๊ฐ€ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฐฑ์—”๋“œ, ์›น ๋ฐ ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ๊ฐ•๋ ฅํ•œ ๋„๊ตฌ์ธ AppMaster ๊ฐœ๋ฐœ์ž๊ฐ€ ์‹œ๊ฐ์  ๋””์ž์ด๋„ˆ์™€ ์ƒ์„ฑ๋œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŽ˜์ด์ง€ ๋งค๊น€์„ ํšจ๊ณผ์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด AppMaster ๋กœ ๊ตฌ์ถ•๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋ฐ˜์‘์„ฑ๊ณผ ํ™•์žฅ์„ฑ์ด ๋›ฐ์–ด๋‚˜๊ณ  ๋‹ค์–‘ํ•œ ์‚ฐ์—… ๋ฐ ์‚ฌ์šฉ ์‚ฌ๋ก€์—์„œ ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŽ˜์ด์ง€ ๋งค๊น€์„ ๊ตฌํ˜„ํ•˜๋Š” ๋™์•ˆ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜๊ณผ ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋””์ž์ธ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ์ถ”๊ฐ€ ์š”์†Œ๋ฅผ ๊ณ ๋ คํ•˜๋Š” ๊ฒƒ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์š”์†Œ์—๋Š” ํŽ˜์ด์ง€ ๋ฒˆํ˜ธ, ์ด์ „-๋‹ค์Œ ๋ฒ„ํŠผ ๋˜๋Š” ๋ฌดํ•œ ์Šคํฌ๋กค๊ณผ ๊ฐ™์€ ํŽ˜์ด์ง• ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ์š”์†Œ ์„ ํƒ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์—๊ฒŒ ์ „์ฒด ํŽ˜์ด์ง€์˜ ์ถ”์ •์น˜๋ฅผ ์ œ๊ณตํ•˜๊ณ  ๋” ์‰ฌ์šด ํƒ์ƒ‰์„ ์œ„ํ•ด ํ•„ํ„ฐ ๋˜๋Š” ์ •๋ ฌ ์˜ต์…˜์„ ์ œ๊ณตํ•˜๋ฉด ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์œ ํšจํ•˜์ง€ ์•Š๊ฑฐ๋‚˜ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚œ ํŽ˜์ด์ง€ ์š”์ฒญ์ด ์žˆ์„ ๋•Œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ์œ ์šฉํ•˜๊ณ  ์œ ์ตํ•œ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๋„๋ก ์ ์ ˆํ•œ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ๋„ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

ํŽ˜์ด์ง€ ๋งค๊น€ ๊ตฌํ˜„์˜ ํ•ต์‹ฌ ์š”์†Œ ์ค‘ ํ•˜๋‚˜๋Š” ์„œ๋ฒ„-ํด๋ผ์ด์–ธํŠธ ํ†ต์‹ ์„ ์ตœ์ ํ™”ํ•˜๋Š” ๊ฒƒ๊ณผ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค. RESTful API ์„œ๋น„์Šค๋Š” ํŽ˜์ด์ง€๊ฐ€ ๋งค๊ฒจ์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ํด๋ผ์ด์–ธํŠธ ์ธก ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ œ๊ณตํ•˜๋Š” ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. AppMasterno-code ํ”Œ๋žซํผ์„ ์‚ฌ์šฉํ•˜๋Š” ๋™์•ˆ ๊ฐœ๋ฐœ์ž๋Š” ํด๋ผ์ด์–ธํŠธ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋”ฐ๋ผ ํŽ˜์ด์ง€๊ฐ€ ๋งค๊ฒจ์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” REST API endpoints ์‰ฝ๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์š”์ฒญ๋œ ๋ฐ์ดํ„ฐ๋งŒ ์ „์†ก๋˜๋„๋ก ํ•˜์—ฌ ๋„คํŠธ์›Œํฌ ๋ถ€ํ•˜๋ฅผ ์ค„์ด๊ณ  ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์‘๋‹ต์„ฑ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŽ˜์ด์ง€ ๋งค๊น€์€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ ๋ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ์˜์—ญ์—์„œ ํŠนํžˆ ๋Œ€๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ๋•Œ ์—†์–ด์„œ๋Š” ์•ˆ ๋  ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ํŽ˜์ด์ง€ ๋งค๊น€์€ ์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ ๊ด€๋ฆฌ ๊ฐ€๋Šฅํ•œ ํŽ˜์ด์ง€๋กœ ๋‚˜๋ˆ„์–ด ์ „๋ฐ˜์ ์ธ ์‹œ์Šคํ…œ ์„ฑ๋Šฅ๊ณผ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ๊ฐœ์„ ํ•˜๋Š” ๋™์‹œ์— ๊ณผ๋ถ€ํ•˜ ์ƒํƒœ์—์„œ๋„ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ํšจ์œจ์„ฑ๊ณผ ์‘๋‹ต์„ฑ์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ AppMaster ์˜ ๊ฐ•๋ ฅํ•œ no-code ๋„๊ตฌ ์„ธํŠธ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ์ž๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ํŽ˜์ด์ง€ ๋งค๊น€์„ ์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๋‹ค์–‘ํ•œ ๋ถ€๋ฌธ์—์„œ ๋‹ค์–‘ํ•œ ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋Š” ์‹ ์†ํ•˜๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•˜๋ฉฐ ์œ ์ง€ ๊ด€๋ฆฌ ๊ฐ€๋Šฅํ•œ ์†Œํ”„ํŠธ์›จ์–ด ์†”๋ฃจ์…˜์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.