잠시만 기다려 주세요


 
HOME   |  여기는?   |  바다물때표   |  여러가지 팁 (781)  |  추천 및 재미 (53)  |  자료실 (18)  |  끄적거림 (456)  |  시나리오 (757)  |  드라마 대본 (248)  |  

2019년 07월 20일
신이 인간에게 준 최고의 선물은 바로 망각이다 - 니체
 

    DATABASE

DATABASE - postgresql 프로시져 함수에서 for, foreach 문 사용하기, 사용법
이 름 : 바다아이   |   조회수 : 718         짧은 주소 : https://www.bada-ie.com/su/?211535005525
for와 foreach를 사용하여 합계를 구하는 함수를 만들어 보았습니다.

생각대로 foreach 가 훨신 깔끔하게 느껴집니다.
 

-- for를 사용하여 합계 구하기

CREATE OR REPLACE FUNCTION fn_sum(numeric[])
RETURNS numeric AS $$
DECLARE
     a_data      ALIAS FOR $1;
     v_return    numeric;
     v_i         integer;
     v_len       integer;
BEGIN
     v_return := 0;
     v_len := array_length(a_data, 1);
     FOR v_i IN 1..v_len
     LOOP
          v_return := v_return + a_data[v_i];
     END LOOP;
     RETURN v_return;
END
$$ LANGUAGE 'plpgsql';

 
 
-- forech를 사용하여 합계 구하기

CREATE OR REPLACE FUNCTION fn_sum(numeric[])
RETURNS numeric AS $$
DECLARE
     a_data      ALIAS FOR $1;
     v_return    numeric;
     v_val       numeric;
BEGIN
     v_return := 0;
     FOREACH v_val IN ARRAY a_data

     LOOP
          v_return := v_return + v_val;
     END LOOP;

     RETURN v_return;
END
$$ LANGUAGE 'plpgsql';


사용은 

select fn_sum('{1,2}')
 
값은 3이 되겠네요...


출처: http://acpi.tistory.com/115?category=506894 
| |


      1 page / 3 page
번 호 카테고리 제 목 이름 조회수
72 DATABASE db .. dbeaver, db admin tool 바다아이 569
71 DATABASE postgresql SEQUENCE reset .... 바다아이 575
70 DATABASE mysql, mariadb , , , , left, substring, right, concat 바다아이 930
69 DATABASE [PostgreSql] WITH , , Operator 바다아이 692
현재글 DATABASE postgresql for, foreach , 바다아이 719
67 DATABASE postgresql , , into ... 바다아이 675
66 DATABASE postgresql PL/pgSQL - SQL Procedural Language, , 바다아이 2620
65 DATABASE postgresql ... .. 바다아이 832
64 DATABASE postgresql CSV export/import 바다아이 856
63 DATABASE postgresql tablespace , .... 바다아이 997
62 DATABASE postgresql 10 partitioning, ... , ... 바다아이 786
61 DATABASE Using PostgreSQL Arrays, ... ... 바다아이 862
60 DATABASE PostgreSQL (TRIGGER) (function) 바다아이 804
59 DATABASE mysql, mariadb DISTINCT GROUP BY 바다아이 784
58 DATABASE Optimize and Improve PostgreSQL Performance with VACUUM, ANALYZE, and REINDEX 바다아이 845
57 DATABASE postgresql tuple . vacuumdb .. , . 바다아이 860
56 DATABASE RDBMS SQL MONGODB ... 바다아이 791
55 DATABASE mysql 5.x my.cnf 바다아이 982
54 DATABASE postgresql , .. 바다아이 1083
53 DATABASE postgresql , size, 바다아이 1324
52 DATABASE postgresql , , .... 바다아이 940
51 DATABASE PostgreSQL Replication, , , master, slave 바다아이 1190
50 DATABASE postgresql case 바다아이 1002
49 DATABASE postgresql with 바다아이 981
48 DATABASE postgresql , , string 바다아이 1127
47 DATABASE / SELECT , 바다아이 1071
46 DATABASE Postgresql partitioning table , , , 바다아이 1138
45 DATABASE PostgreSQL 바다아이 1250
44 DATABASE postgresql vacuumdb, psql, pg_dump password crontab 바다아이 1394
43 DATABASE postgresql sequence 퀀 auto_increment . 바다아이 1772
| |






Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 firefox 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ FreeBSD + GoLang + PostgreSQL ]
서버위치 : New Jersey  실행시간 : 0.04035
to webmaster... gogo sea. gogo sea.