하나는 들어있고 다른 하나는 비어있는 걸 합치려고 하니 에러가 나서

찾아보니 그냥 함수를 만들어 버린듯 

CREATE AGGREGATE array_accum (anyarray)
(
    sfunc = array_cat,
    stype = anyarray,
    initcond = '{}'
);  


[링크 :
https://gist.github.com/ryandotsmith/4602274]]

[링크 : https://codeday.me/ko/qa/20190625/887424.html]

Posted by 구차니

분석함수를 나타내는거 over()

partition by는 계산 대상 그룹을 지정하고.. 라는데 무슨 말인지 이해가 안된다..

[링크 : http://www.gurubee.net/lecture/2671]

[링크 : https://syoons.tistory.com/8]

[링크 : https://brownbears.tistory.com/310]

 

곰곰히 생각해보니.. 여러개 쿼리로 일일이 조건을 줘서 통계를 내야 할 걸

한줄에 편리하게 하는 것일 뿐인가?

select *
from(
   select code, date, account, upd_date,

   max(upd_date) over (partition by code, date) as maxdate from hoge

) t1
where t1.upd_date = t1.maxdate;

[링크 : https://javafactory.tistory.com/1343]

 

+

편하게 쓰려고 만들었다 라는 말이 맞는게

group by는 전체 쿼리에 적용

partition by는 window function 으로 작동

[링크 : https://stackoverflow.com/questions/2404565/sql-server-difference-between-partition-by-and-group-by]

Posted by 구차니

좀 대량으로 지울일이 있어서 pgadmin으로 하려니 일일이 클릭해야 해서 대략 빡침 시전

그러다가 psql 가서 하려니..

크아아 public schema가 아니라 바로 안나오네?!?!

 

그래서 고민 때리다 검색해보니

[링크 : https://stackoverflow.com/questions/4202135/how-to-drop-multiple-tables-in-postgresql-using-a-wildcard]

 

pg_tables와 pg_sequences에서 테이블 명을 검색해서 뽑아낼수 있어

그걸 이용해서 drop table, drop sequence를 해버리니 편하네

'프로그램 사용 > postgreSQL' 카테고리의 다른 글

array_agg 빈 배열을 누적할 수 없습니다.  (0) 2019.11.28
sql over() partition by  (0) 2019.11.28
pgcrypt encrypt() aes cbc ecb 그리고 padding  (0) 2019.11.25
sql TO_CHAR()  (0) 2019.11.23
sql where like %와 _  (0) 2019.11.22
Posted by 구차니

일단~은

AES/CBC/PKCS5PADDING이 기본이라고 보면 될 듯?

 

Encrypt/decrypt data using the cipher method specified by type. The syntax of the type string is:

where algorithm is one of:

  • bf — Blowfish

  • aes — AES (Rijndael-128, -192 or -256)

and mode is one of:

  • cbc — next block depends on previous (default)

  • ecb — each block is encrypted separately (for testing only)

and padding is one of:

  • pkcs — data may be any length (default)

  • none — data must be multiple of cipher block size

[링크 : https://www.postgresql.org/docs/9.6/pgcrypto.html]

'프로그램 사용 > postgreSQL' 카테고리의 다른 글

sql over() partition by  (0) 2019.11.28
pg_tables, pg_sequences  (0) 2019.11.28
sql TO_CHAR()  (0) 2019.11.23
sql where like %와 _  (0) 2019.11.22
split_part() 에서 나눠지지 않을 경우 없는 막기  (0) 2019.11.15
Posted by 구차니

 

 

[링크 : https://it.toolbox.com/question/padding-zeros-for-a-sequence-080714]

[링크 : https://stackoverflow.com/questions/6862766/how-to-create-postgresql-leading-zero-sequence-zerofill]

[링크 : https://w3resource.com/PostgreSQL/lpad-function.php]

[링크 : https://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_db&wr_id=131902]

 

+

mysql zerofill 이라는 옵션제공(table 생성시)

[링크 : https://m.blog.naver.com/luvtoma/221179414916]

 

단, 표시가 다르게 될 뿐이지, 실제 저장되는 데이터 사이즈가 달라지는건 아니라는 이야기

[링크 : https://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=qna_db&wr_id=169515&page=638]

 

oracle에서는 LPAD나 RPAD혹은 TO_CHAR로 하라는거 봐서는

mysql에서만 제공하는 특수한 기능으로 보인다.

'프로그램 사용 > mysql & mariaDB' 카테고리의 다른 글

mariadb c# connector  (0) 2021.10.22
HeidiSQL  (2) 2021.08.18
mysql-dump compatible 함정 -_-  (0) 2019.09.04
mysql / unix-socket  (0) 2019.09.04
mysql exists  (0) 2019.07.05
Posted by 구차니

어떻게 보면.. sprintf 역활을 하는 함수라고 하면 되려나?

특정 자릿수로 제한하거나 공백에 0을 채우거나 할때

 

SELECT TO_CHAR(value, '00000')

이렇게 하면 value가 5자리를 넘지 않을 경우

00001~99999 까지 자릿수 유지하면서 출력한다.

[링크 : https://www.postgresql.org/docs/9.3/functions-formatting.html]

Posted by 구차니

솔찍히 다시 원점으로 돌아가서

처음부터 봐야 할 느낌.. branch 오가거나 특정 revision 가거나 하는거

막 혼동이 온다...

 

[링크 : https://blog.outsider.ne.kr/820]

Posted by 구차니

%는 * 의미

_는 ? 의미 로 사용이 가능하다.

[링크 : https://www.w3schools.com/sql/sql_wildcards.asp]

Posted by 구차니

git은 여전히 어렵다... ㅠㅠ

git의 HEAD에서 몇번째 전으로 돌아가서 그걸 다시 올리거나

[링크 : https://mytory.net/archives/10078]

 

그게 아니라면 특정 버전까지를 전부 지우는 것도 가능 한듯?

[링크 :https://medium.com/nonamedeveloper/초보용-git-되돌리기-reset-revert-d572b4cb0bd5]

 

 

+

stash 영역이란걸 알아두면 편할 듯?

리비전 오갈때 잠시 저장해 둘 수 있는 곳

[링크 : https://medium.com/@pks2974/자주-사용하는-기초-git-명령어-정리하기-533b3689db81]

Posted by 구차니

1123.0

이라는 숫자가 있고

1123 이 있는데

split_part(num, '.', 2)를 하면 1123은 0으로 나누어지지만

1123은 ''으로 나오기에 미리 값을 확인하고 null로 case 문 처리 해야 할 듯

 

ASE WHEN version LIKE '%-%'
     THEN SPLIT_PART(version, '-', 2)::int
     ELSE 0 END

[링크 : https://stackoverflow.com/questions/45766644/substituting-value-in-empty-field-after-using-split-part]

'프로그램 사용 > postgreSQL' 카테고리의 다른 글

sql TO_CHAR()  (0) 2019.11.23
sql where like %와 _  (0) 2019.11.22
postgres table schema comment 달기  (0) 2019.11.13
with in sql  (0) 2019.11.11
where not in 에서는 null 값을 조심하자  (0) 2019.11.11
Posted by 구차니