[Clickhouse] User Defined Function

Clickhouse๋Š” ์ปค์Šคํ…€ ํ•จ์ˆ˜๋ฅผ ์ •์˜ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•œ๋‹ค.
PostgreSQL์˜ pl/pgsql๋งŒํผ ์ž์œ ๋กญ๊ณ  ๋ฐฉ๋Œ€ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง„ ์•Š์ง€๋งŒ ๋‹จ์ˆœํ•œ ์‚ฌ์šฉ์‚ฌ๋ก€์—์„œ๋Š” ์“ธ๋งŒํ•˜๋‹ค.

ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

CREATE FUNCTION ํ•จ์ˆ˜๋ช… AS (ํŒŒ๋ผ๋ฏธํ„ฐ) -> ํ‘œํ˜„์‹

ํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜๊ฐ’์„ ๋‹จ์ผ ํ‘œํ˜„์‹์œผ๋กœ ์ •์˜๋œ๋‹ค.
if ๊ฐ™์€ ์กฐ๊ฑด๋ฌธ์ด๋‚˜ ํ•จ์ˆ˜ ํ˜ธ์ถœ ์ค‘์ฒฉ์€ ๊ฐ€๋Šฅํ•˜๋‚˜, ์žฌ๊ท€ํ˜ธ์ถœ์ด๋‚˜ ๋ฃจํ”„ ์ฒ˜๋ฆฌ๋Š” ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค.

๊ทธ๋ž˜์„œ ์‚ฌ์‹ค ์ง„์งœ ๋ณต์žกํ•œ ๋กœ์ง์„ ๊ตฌํ˜„ํ•˜๋Š”๊ฑด ๋ถˆ๊ฐ€๋Šฅํ•˜๊ณ , ์ˆ์ปท ๊ฐœ๋…์œผ๋กœ ์ ‘๊ทผํ•˜๋Š” ํŽธ์ด ์ข‹๋‹ค.

๋‹ค์Œ์€ ๊ฐ„๋‹จํ•œ ์‚ฌ์šฉ๋ก€๋‹ค.
URL์„ ๋ฐ›์•„์„œ PATH ๋ถ€๋ถ„๋งŒ ์ถ”์ถœํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค.

ํ˜ธ์ถœํ•  ๋•Œ๋Š” ๊ทธ๋ƒฅ ํ•จ์ˆ˜ ์ด๋ฆ„์— ๋งค๊ฐœ๋ณ€์ˆ˜๋งŒ ์ ๋‹นํžˆ ์ž˜ ๋„˜๊ฒจ์ฃผ๋ฉด ๋œ๋‹ค.



์ฐธ์กฐ
https://clickhouse.com/docs/sql-reference/functions/udf
https://clickhouse.com/docs/sql-reference/statements/create/function