ȸ¿ø°¡ÀԡžÆÀ̵ð/ºñ¹øã±â
ȨÀ¸·Î


ƯÁ¤ÇÑ ´ÞÀÇ »ýÀÏÀÎ »ç¶÷ ¸®½ºÆ® °¡Á®¿À±â
12³â Àü
ƯÁ¤¿ù¿¡ ´ëÇÑ »ýÀÏÀÎ »ç¶÷µéÀÇ ¸®½ºÆ®¸¦ »Ì´Â Äõ¸®¹®ÀÔ´Ï´Ù.


´Ü¼øÈ÷ ¾ç·Â¸¸ »ç¿ëÇÑ´Ù¸é ¾ÆÁÖ ½±°Ô ÇÒ ¼ö ÀÖ°í,
À½·ÂÆ÷ÇÔÇÏ´õ¶óµµ ¿À´Ã ³¯Â¥ (ƯÁ¤ÀÏ) ÀÇ »ýÀÏ ¸ñ·Ïµµ ½±°Ô ³ª¿À´Âµ¥..
À½·ÂÀÌ Æ÷ÇÔµÈ Æ¯Á¤ ´Þ.. ÀÌ°Å »ý°¢º¸´Ù »ó´çÈ÷ º¹ÀâÇØÁö³×¿ä..
ÀÏ´Ü À½·Â »ýÀÏ µ¥ÀÌŸ°¡ °ÅÀÇ ¾ø¾î Á¦´ë·Î Å×½ºÆ®´Â ¾È µÇ¾ú½À´Ï´Ù.
´ëÃæ Çغ¸´Ï Àß ³ª¿À´Â°Å °°½À´Ï´Ù.
ºñ¿ëÀº Å©°Ô ¸¶´Ï ¾È µå´Â°Å °°Àºµ¥... ÀÏ´Ü Äõ¸®¹®¿¡¼­ ¹Ýº¹ÀÌ Á» ¸¹Àºµ¥...
ÀÌ°É ¾îij Á» °£´ÜÇÏ°Ô Ã³¸®ÇÒ ¹æ¹ýÀº ¾øÀ»±î¿ä? ¹Ýº¹±¸¹®À» ÇÔ¼ö·Î ¸¸µé±ä Á».... ºäµµ °ï¶õÇÏ°í..
ÀÇ°ßÀÖÀ¸½ÅºÐ ´ñ±Û ´Þ¾ÆÁÖ¼¼¿ä..

PostgreSQL ¿ëÀÔ´Ï´Ù¸¸.. Äõ¸®¹®ÀÌ Æ¯º°ÇÑ ºÎºÐÀÌ ¾øÀ¸¹Ç·Î Ÿ DBMS ¿¡¼­µµ ¾ÆÁÖ Á¶±Ý¸¸ °íÄ¡¸é ¾ó¸¶´øÁö Àû¿ë °¡´ÉÇÒ °Å °°½À´Ï´Ù.
(ÀÌÇÏ Á¸Äª »ý·«)


member - ȸ¿øÅ×À̺íÁß ÀϺÎ
user_id      text    : »ç¿ëÀÚ ¾ÆÀ̵ð
birth_year  smallint : »ý³â¿ùÀÏ Áß ³âµµ
birth_md    char(4)  : »ý³â¿ùÀÏ Áß ¿ùÀÏ
solar          boolean  : ¾ç/À½ ±¸ºÐ (¾ç·Â true)

lunar - ¾ç/À½·Â º¯È¯ Å×À̺í Áß ÀϺÎ
lumar_md char(4)  : À½·Â ³â¿ùÀÏ Áß ¿ùÀÏ
solars      integer  : À½·Â¿¡ ÇØ´çÇÏ´Â ¾ç·ÂÀ» ³â¿ùÀÏ·Î ºÙ¿© ¸¸µç ¼ýÀÚÇü
                            date ÇüÀÇ Ä÷³µµ ÀÖÁö¸¸.. to_char µîÀÇ ÇÔ¼ö¸¦ ¾²¾ß Çϱ⠶§¹®¿¡..
yun        boolean  : À±´Þ ¿©ºÎ (À±´Þ true)

select lunar_y, lunar_md, solar, yun, solars from lunar;
-------+---------+------------+-------+-----------
lunar_y  lunar_md    solar      yun    solars
-------+---------+------------+-------+-----------
  1899 |    1201 | 1900-01-01 | f    | 19000101
  1899 |    1202 | 1900-01-02 | f    | 19000102
  1899 |    1203 | 1900-01-03 | f    | 19000103
  1899 |    1204 | 1900-01-04 | f    | 19000104
  ...........


<Âü°í>
  1. PostgreSQL ¿¡¼­´Â ³¯Â¥ÇüÀÌ ¾ö°ÝÇϱ⠶§¹®¿¡ À½·ÂÀ» Á¦´ë·Î Ç¥ÇöÇÒ ¼ö ¾ø´Ù.
      ÀÌ·²Å׸é 1990-02-30 °ú °°Àº °æ¿ìÀÌ´Ù.
      ±×·¡¼­ À½·Â Ç¥Çö ¹æ¹ýÁß ³âµµ¿Í ¿ùÀÏÀ» ºÐ¸®ÇÏ°í ³âµµ´Â ¼ýÀÚ ¿ùÀÏÀº ¹®ÀÚ·Î Çß´Ù.
  2. ¾ç/À½·ÂÀ» ÇÁ·Î±×·¥À¸·Î º¯È¯ÇÒ ¼öµµ ÀÖÁö¸¸ ¿Ïº®ÇÏÁö ¾ÊÀ¸¹Ç·Î
      µ¹¾Æ´Ù´Ï´Â 1900 ~ 2200 ±îÁöÀÇ À½·Â µ¥ÀÌŸ ¸¦ ÀÌ¿ëÇÏ¿´´Ù.
  3. À±´ÞÀ» ÀüÇô °í·ÁÇÏÁö ¾Ê¾Ò´Ù. ¸¸ÀÏ À±´ÞÀ̶ó¸é yun À» true ·Î ÇÏ¸é µÈ´Ù.
  4. »ýÀÏ¿¡ ´ëÇÑ ³âµµ´Â ÇÊ¿ä¾øÀ¸³ª, ƯÁ¤¿ù¿¡ ´ëÇÑ ³âµµ´Â ÇÊ¿äÇÏ´Ù. (³â¸¶´Ù À½·Â ³¯Â¥°¡ Ʋ¸®¹Ç·Î)


¸ÕÀú ƯÁ¤ ³â¿ù¿¡ ´ëÇÑ ¸¶Áö¸·³¯À» ±¸ÇÏ´Â ÇÔ¼ö¸¦ ¸¸µç´Ù.
¹°·Ð ¸¸µé ÇÊ¿ä¾øÀÌ ¹Ù·Î ÇØ´ç À§Ä¡¿¡ Áý¾î ³Ö¾îµµ ¾Æ¹«·± »ó°üÀº ¾øÁö¸¸,
¸¶Áö¸·ÀÏÀ» ±¸ÇÏ´Â ÀÏÀº Á¾Á¾ ¹ß»ýÇÒ ¼ö Àֱ⠶§¹®¿¡ ¹Ì¸® ÇÔ¼ö·Î ¸¸µé¾î³õÀ¸¸é ÆíÇÏ´Ù.

create or replace function last_date (integer) returns date as
$$
  select (to_date($1, 'YYYYMM') + interval '1 month' - interval '1 day')::date;
$$ language sql;


select last_date(200702);                                            
last_date  
------------
2007-02-28

ÀÌ·±½ÄÀ¸·Î ³ª¿É´Ï´Ù.


prepare get_birthday (integer) as
(
  select * from member
  where (birth_md between
                                to_char(last_date($1), 'MM01')
                          and to_char(last_date($1), 'MMDD')
            and solar = true
            )
    or case when
            (select lunar_md from lunar
            where solars = ($1 || '01')::int
                and yun = false
            )
              >
            (select lunar_md from lunar
            where solars = to_char(last_date($1), 'YYYYMMDD')::int
                and yun = false
            )
        then (
                  (birth_md between
                                      (select lunar_md from lunar
                                      where solars = ($1 || '01')::int
                                          and yun = false
                                      )
                                and '1231'
                  )
                  or
                  (birth_md between
                                      '0101'
                                and (select lunar_md from lunar
                                      where solars = to_char(last_date($1), 'YYYYMMDD')::int
                                          and yun = false
                                      )
                  )
                  and solar = false
                )
        else
                (birth_md between
                                    (select lunar_md from lunar
                                    where solars = ($1 || '01')::int
                                        and yun = false
                                    )
                              and (select lunar_md from lunar
                                    where solars = to_char(last_date($1), 'YYYYMMDD')::int
                                        and yun = false
                                    )
                and solar = false
                )
        end
  order by user_id
);




»þ¿ë¹ýÀº
execute get_birthday(200706);

prepare ·Î ÁöÁ¤ÇÏÁö ¾Ê°í
Àú°Í ÀÚü¸¦ function À¸·Î ¸¸µé°í ÇÔ¼ö ÀÎÀÚ¸¦ interger ·Î ¹Þ¾Æ ½áµµ ÁÁ°ÚÁÒ?
ÃßõÃßõ : 637 Ãßõ ¸ñ·Ï
¹øÈ£ Á¦¸ñ
2,885
input ÀÔ·Â ÇÊµå ¾ÕµÚ °ø¹é ½Ç½Ã°£ Á¦°Å
2,884
Placeholder Æ÷Ä¿½º½Ã °¨Ãß±â
2,883
MySQL Áߺ¹µÈ µ¥ÀÌÅ͸¦ »èÁ¦
2,882
MySQL Áߺ¹ µ¥ÀÌÅÍ È®ÀÎ
2,881
sessionStorage.getItem ¿Í sessionStorage.setItem
2,880
Á¦ÀÌÄõ¸® ·£´ýÀ¸·Î ¹è°æ»ö º¯°æ
2,879
preg match¿¡ °üÇÑ Á¤±Ô½Ä
2,878
Stream an audio file with MediaPlayer ¿Àµð¿À ÆÄÀÏ ½ºÆ®¸®¹Ö Çϱâ
2,877
Audio Streaming PHP Code
2,876
PHP $ SERVER ȯ°æ º¯¼ö Á¤¸®
2,875
Vimeo (ºñ¸Þ¿À) API ¸¦ »ç¿ëÇÏ¿© Ç÷¹À̾î ÄÁÆ®·ÑÇϱâ
2,874
iframe »ç¿ë½Ã ÇÏ´Ü¿¡ ¹ß»ýÇÏ´Â °ø¹é Á¦°Å¹æ¹ý
2,873
¾ÆÀÌÇÁ·¹ÀÓ(iframe) Àüüȭ¸é °¡´ÉÇÏ°Ô Çϱâ
2,872
ºÎÆ®½ºÆ®·¦(bootstrapk)¿¡¼­ »ç¿ëÇÏ´Â class¸í Á¤¸®
2,871
ºÎÆ®½ºÆ®·¦ CSS
2,870
Å©·Ò¿¡¼­ ¸¶Áø Á¶Àý
2,869
PHP ÇöÀç ÆäÀÌÁöÀÇ µµ¸ÞÀθíÀ̳ª urlµîÀÇ Á¤º¸ ¾Ë¾Æ¿À±â
2,868
PHP preg match all()
2,867
PHP ·Î À¥ÆäÀÌÁö ±Ü¾î¿À±â ¸ðµç ¹æ¹ý ÃÑÁ¤¸®!
2,866
[PHP] ¿ø°ÝÁö ÆÄÀÏ ÁÖ¼Ò ³ëÃâ ¾ÈÇÏ°í curl·Î ´Ù¿î·Îµå ¹Þ±â
2,865
PHP ÇÔ¼ö Á¤¸®
2,864
¾ÆÀÌÇÁ·¹ÀÓ(iframe) ºñÀ² À¯ÁöÇϸ鼭 Å©±â Á¶ÀýÇÏ´Â ¹æ¹ý
2,863
PHP ¹è¿­¿¡¼­ ¹«ÀÛÀ§·Î Çϳª »Ì¾ÆÁÖ´Â array rand() ÇÔ¼ö
2,862
PHP Á¤±Ô½Ä Á¤¸®
2,861
PHP Á¤±Ô½ÄÀ» È°¿ëÇÑ ÅÂ±× ¹× ƯÁ¤ ¹®ÀÚ¿­ Á¦°Å ¹× ÃßÃâ ¹æ¹ý
2,860
php Å©·Ñ¸µ ¶Ç´Â ÆÄ½Ì ÇÔ¼ö, Á¤±Ô½Ä ¸ðÀ½
2,859
Á¦ÀÌÄõ¸® ±âº» ¸í·É¾î
2,858
À¥ÆäÀÌÁö °¡·Î ¸ðµå¼¼·Î ¸ðµå ÀνÄÇϱâ
2,857
¸ð¹ÙÀÏ À¥ È­¸é °­Á¦ ȸÀü(°¡·Î¸ðµå °íÁ¤)
2,856
[HTML5]¿¡¼­ frameset ´ëü ¹æ¹ý°ú iframe ¼Ó¼º
¸ñ·Ï
¹ÂÁ÷Æ®·ÎÆ® ºÎ»ê±¤¿ª½Ã ºÎ»êÁø±¸ °¡¾ßµ¿ ¤Ó °³ÀÎÁ¤º¸Ãë±Þ¹æħ
Copyright ¨Ï musictrot All rights reserved.