¾È±Ô °øºÎ¹æ

MS-SQL > Å×ÀÌºí ±¸Á¶¸¦ ¹Ù²ã¼­ Ãâ·ÂÇغ¸ÀÚ

µî·ÏÀÏ : 2017-07-03 19:17 Á¶È¸¼ö : 52,544

°­Á Á¦¸ñÀ» ºÁ¼­´Â ÀÌ»ç¶÷ÀÌ ¹«½¼ ¾ê±â¸¦ ÇϽô°¡???

Àǹ®ÀÌ µå½ÇÁÙ·Î ¾Ð´Ï´Ù.

Á¦°¡ ºÙÀ̱Ⱑ ¹¹ Çؼ­ ±×³É ²Ã¸®´Âµ¥·ç ºÙ¿´À¸´Ï, ½Å°æ¾²Áö ¸¶½Ã±æ,,,,

¿À´ÃÀº ¾îÂ¸é ¾ÆÁÖ À¯¿ëÇÑ ÇÔ¼ö¸¦ ¿¹·Î º¼¼öµµ ÀÖ°Ú½À´Ï´Ù.

¹Ì¸® ¸»¾¸ µå¸®Áö¸¸, ÇÁ·Î½ÃÁ®¸¦ ÀÌ¿ëÇؼ­µµ °¡´ÉÇÏ°í, ²À À̹æ¹ýÀ» ¾²Áö ¾ÊÀ¸¼Åµµ

¾ó¸¶µçÁö ´Ù¸¥ ¹æ¹ýÀ¸·Î ÇØ°áÇÒ¼ö ÀÖÀ¸½Ã¶ó ¹Ï½À´Ï´Ù.

ÀÏ´Ü ¿ì¸®°¡ ÇØ¾ß ÇÒÀÏÀº ÀÌ°Ì´Ï´Ù.

 

Å×ÀÌºí ¸í : area

pub_id( index °ª)

pub_area ( Áö¿ª )

1

ÀÎõ

1

¼ö¿ø

1

¿ëÀÎ

2

±¤ÁÖ

2

¼øõ

2

¿©¼ö

3

ºÎ»ê



area Å×ÀÌºí¿¡ À§¿Í °°Àº Çü½ÄÀ¸·Î µ¥ÀÌŸ°¡ Á¸ÀçÇÕ´Ï´Ù.
1 °ªÀ̸é, °æ±âµµ Áö¿ªÀÇ µµ½Ãµé,,,
2 °ªÀ̸é Àü¶óµµ Áö¿ªÀÇ µµ½Ãµé,
3 °ªÀÌ¸é °æ³²Áö¿ªÀÇ µµ½Ãµé,,,,

1 | ÀÎõ , ¼ö¿ø , ¿ëÀÎ 2 | ±¤ÁÖ , ¼øõ , ¿©¼ö 3 | ºÎ»ê

°ªÀÌ µÇ°ÚÁö¿ä????

Äõ¸® ºÐ¼®±â¸¦ ¿­¾î¼­ ¾Æ·¡ Äõ¸®¸¦ ½ÇÇàÇϽøé Å×À̺í°ú °ªµéÀÌ µé¾î °©´Ï´Ù.
 

	create table area (pub_id int, pub_area varchar(10))
	go
	insert into area values (1, 'ÀÎõ')
	insert into area values (1, '¼ö¿ø')
	insert into area values (1, '¿ëÀÎ')
	insert into area values (2, '±¤ÁÖ')
	insert into area values (2, '¼øõ')
	insert into area values (2, '¿©¼ö')
	insert into area values (3, 'ºÎ»ê')
	go


±×·¸´Ù¸é ¿©·¯ºÐµéÀÌ Äõ¸®¸¦ ÀÌ¿ëÇؼ­  ¾Æ·¡ÀÇ Ç¥¿Í °°ÀÌ Ãâ·ÂÀ» ½ÃÄÑ¾ß ÇÕ´Ï´Ù.

¿À´ÃÇØ¾ß ¼º°øÇØ¾ß ÇÒ ¹Ì¼Ç ÀÔ´Ï´Ù....

 

pub_id( index °ª)

pub_area ( Áö¿ª )

1

ÀÎõ , ¼ö¿ø , ¿ëÀÎ

2

±¤ÁÖ , ¼øõ , ¿©¼ö

3

ºÎ»ê



¾î¶°¼¼¿ä??? ½±°Ô °¡´ÉÇϽðھî¿ä???

ÀúÀÇ °æ¿ì´Â ÀÌ ¹®Á¦¸¦ ÇØ°áÇϱâ À§Çؼ­ »ç¿ëÀÚ Á¤ÀÇ ÇÔ¼ö¸¦ ÀÌ¿ëÇÏ´Â ¹æ¹ýÀ»

»ç¿ëÇÕ´Ï´Ù.

´ÙÀ½°ú °°Àº ÇÔ¼ö¸¦ Çϳª ¸¸µé¾î º¸¼¼¿ä.
 

	CREATE function dbo.f_area (@pub_id int)
    		returns varchar(8000)
	as
	begin
    		declare @r varchar(8000)
    		set @r = ""
    		select @r=@r+","+pub_area from area where pub_id = @pub_id
    		return (substring(@r,2,8000))
	end


À§ÀÇ ÇÔ¼ö¸¦ °£´ÜÈ÷ ¼³¸íµå¸®µµ·Ï ÇÏ°Ú½À´Ï´Ù.

@pub_id °ª¿¡ 1 °ªÀÌ µé¾î ¿ÔÀ»¶§ 'ÀÎõ , ¼ö¿ø , ¿ëÀÎ' °ªÀÌ Ãâ·ÂÀÌ µË´Ï´Ù.

2°ªÀÌ µé¾î¿ÔÀ»¶§´Â '±¤ÁÖ , ¼øõ , ¿©¼ö' °ªÀÌ Ãâ·ÂµÇ°ÚÁö¿ä?

@r º¯¼öÀÇ °ªÀ» ´©Àû½ÃÅ°±â ¶§¹®¿¡ ',ÀÎõ , ¼ö¿ø , ¿ëÀÎ' °ªÀÌ µé¾î°¡°ÚÁö¿ä?

¿©±â¿¡¼­ return °ª¿¡ substring(@r,2,8000) ¸¦ Á־ óÀ½ "," ¸¦ »« °ªºÎÅÍ 8000ÀÚ±îÁö
Ãâ·ÂÀ» ½ÃÅ°°ÚÁö¿ä???

ÀÌÇØ°¡Áö ¾ÊÀ¸½Ã¸é ¼Ò½º¸¦ ÀÚ¼¼È÷ ºÐ¼® ¹Ù¶ø´Ï´Ù.

°ªÀÌ ³Ñ¾î¿À´Â°Í¿¡ µû¶ó¼­ Áö¿ªÀ» ±¸ºÐ ÁöÀ»¼ö ÀÖ½À´Ï´Ù.

±×·¸´Ù¸é, ¾ÕÀÇ Äõ¸®¿¡¼­´Â ¾î¶²½ÄÀ¸·Î ³Ñ±â¸é µÉ±î¿ä?

¾Æ·¡¿Í °°Àº Äõ¸®¸¦ ³¯·ÁÁÖ¸é ÇØ°á µË´Ï´Ù.

select pub_id , dbo.f_area(pub_id) from area group by pub_id

Äõ¸®¸¦ º¸¸é pub_id °ªÀ» ±âÁØÀ¸·Î group by¸¦ ÇÕ´Ï´Ù. 1,2,3 °ªÀÌ Àֱ⠶§¹®¿¡ 3°³ÀÇ
·¹Äڵ尡 ³ª¿À°Ô µÇ°ÚÁö¿ä,

Ãâ·ÂÀ» ½Ãų¶§ pub_id , dbo.f_area(pub_id) °ªÀ» Çß½À´Ï´Ù.

Áï, dbo.f_area(pub_id)¸¦ Ç߱⠶§¹®¿¡ f_area ÇÔ¼ö¸¦ È£ÃâÇÏ°Ô µË´Ï´Ù. 1,2,3 °ªÀÌ ÀÖ±â

¶§¹®¿¡ 3¹ø È£ÃâÀ» ÇÏ°Ô µÇ°ÚÁö¿ä????

¾î¶°½Ê´Ï±î???

'¹é¹®ÀÌ ºÒ¿©ÀÏŸ'¶ó Çß´ø°¡¿ä??? Á÷Á¢ Å×½ºÆ® Çغ¸¼¼¿ä....

¾Æ·¡´Â ½ÇÁ¦ Å×½ºÆ®Çغ» °á°ú È­¸é ÀÔ´Ï´Ù.



Á¦¸ñ ±×´ë·Î ÀÔ´Ï´Ù. Å×ÀÌºí±¸Á¶¿Í ´Ù¸¥ ±¸Á¶ÀÇ °á°ú¸¦ °¡Á®¿À´Â ¹æ¹ýÀ» ÇÔ¼ö¸¦ ÀÌ¿ëÇØ ºÃ½À´Ï´Ù.

¾î¶»°Ô º¸¸é À¯¿ëÇÏ°Ô »ç¿ëµÉ¶§°¡ ¾ðÁ¨°¡´Â ÀÖ°ÚÁö¿ä???

²À µµ¿òÀÌ µÇ¼Ì±æ ¹Ù¶ó´Â ¸¶À½¿¡ µÇÁöµµ ¾Ê´Â ¹®ÀåÀ» ½á°¡¸ç °­Á¸¦ ¸¶¹«¸® ÇÕ´Ï´Ù.

Á»´õ ½ºÅ³¾÷ÀÌ µÇ¼Ì±æ,,,
 
¡Ø Ȥ½Ã µµ¿òÀÌ µÇ¼Ì´Ù¸é ´ñ±Û¿¡ ÇѸ¶µð ³²°ÜÁÖ¼¼¿ä!
ÀÛ¼ºÀÚ   ºñ¹Ð¹øÈ£
ÀÚµ¿±Û ¹æÁö     (ÀÚµ¿±Û ¹æÁö ±â´ÉÀÔ´Ï´Ù.)
³»¿ë   ´ñ±Û´Þ±â 
À̸ÞÀÏ ¹®ÀÇ : cak0280@nate.com  
Copyright 2000 By ENTERSOFT.KR All Rights Reserved.