2021년 대체공휴일
광복절 2021.08.16
개천절 2021.10.04
한글날 2021.10.11

'LIFE (일상다반사)' 카테고리의 다른 글
| 미생 마지막회 (0) | 2021.09.01 |
|---|---|
| 이봐, 해보기나 했어? (0) | 2021.08.16 |
| 인생 명언 (0) | 2021.07.26 |
| 갑자기 꺼내든 '전국 5인 금지'…휴가취소·환불다툼 '대혼란' (0) | 2021.07.19 |
| NATURING 네이처링 (0) | 2021.07.19 |
2021년 대체공휴일
광복절 2021.08.16
개천절 2021.10.04
한글날 2021.10.11

| 미생 마지막회 (0) | 2021.09.01 |
|---|---|
| 이봐, 해보기나 했어? (0) | 2021.08.16 |
| 인생 명언 (0) | 2021.07.26 |
| 갑자기 꺼내든 '전국 5인 금지'…휴가취소·환불다툼 '대혼란' (0) | 2021.07.19 |
| NATURING 네이처링 (0) | 2021.07.19 |
[PostgresSQL] 컬럼 내 특정 문자로 split 후 값 출력
사용법은 split_part('원래 문자열', '자를 문자', 위치) 로 사용한다.
postgresql 에서 문자열 또는 필드를 붙일 경우는 concat 함수를 사용한다.
-- split_part(컬럼,자르고자하는 문자, 인덱스)
-- ex
select split_part(tel,'-',4)
from test
-- test 테이블의 tel 컬럼에서 - 문자로 자른 후 4번째에 있는 데이터를 출력 (index는 0이 아닌 1부터 시작)
update 테이블이름 set
year = split_part(date::TEXT, '-', 1)::SMALLINT
, month=split_part(date::TEXT, '-', 2)::SMALLINT
-- concat
SELECT employee_id,first_name,last_name,
concat(first_name,'-',last_name) "Name of the Employee"
FROM employees
WHERE department_id=100;
SELECT *
, col_1 || ', ' || col_2 AS db_name
, id || ' : ' || col_2 AS db_id
FROM char_type_test;
-- (3) CONCAT_WS : CONCAT With Separator
-- : CONCAT_WS(separator, str_1, str_2, ...);
SELECT *
, CONCAT_WS(', ', col_1, col_2) AS db_name_3
, CONCAT_WS(' : ', id, col_2) AS db_id_3
FROM char_type_test;| SQLlite download (0) | 2021.09.01 |
|---|---|
| [PostgreSQL] 행 순서(ROW NUMBER)에 조건 적용하기 (0) | 2021.08.10 |
| [MSSQL] 트랜잭션 로그가 꽉 차서 해결할때. 로그 축소 (0) | 2021.06.18 |
| [SQL] CROSS APPLY 와 INNER JOIN, OUTER APPLY 와 LEFT OUTER JOIN (0) | 2021.06.14 |
| [MS-SQL] update select 로 json data 변경하기 (0) | 2021.06.10 |
[Node.js] Path : 파일 경로를 다루고 변경하는 유틸리티가 포함되어 있다
https://nodejs.sideeffect.kr/docs/v0.10.0/api/path.html
Path Node.js v0.10.0 Manual & Documentation
Path# Stability: 3 - Stable This module contains utilities for handling and transforming file paths. Almost all these methods perform only string transformations. The file system is not consulted to check whether paths are valid. Use require('path') to use
nodejs.sideeffect.kr
'..'와 '.' 부분을 처리해서 문자열 경로를 정규화한다.
슬래시가 여러 개 있는 경우 슬래시 하나로 교체하고 경로의 마지막에 슬래시가 있는 경우에는 유지한다. windows에서는 역슬래시를 사용한다.
path.normalize('/foo/bar//baz/asdf/quux/..')
// returns
'/foo/bar/baz/asdf'
모든 아규먼트를 합쳐서 최종 경로로 정규화한다. 문자열이 아닌 아규먼트는 무시한다.
path.join('/foo', 'bar', 'baz/asdf', 'quux', '..')
// returns
'/foo/bar/baz/asdf'
path.join('foo', {}, 'bar')
// returns
'foo/bar'
to를 절대경로로 변환한다.
to가 절대경로가 아니면 절대경로를 찾을 때까지 from 아규먼트들을 우측에서 좌측의 순서로 앞에 이어붙힌다.모든 from 경로를 사용한 후에도 절대경로를 찾지 못하면 현재 워킹 디렉토리를 사용한다. 최종 경로는 정규화되고 경로가 루트 디렉토리로 처리되지 않는한 마지막 슬래시는 제거한다. 문자열이 아닌 아규먼트는 무시한다.
이는 쉘에서 cd 명령어를 순서대로 실행한 것과 같다.
path.resolve('foo/bar', '/tmp/file/', '..', 'a/../subfile')
//-- 이는 다음과 비슷하다.:
cd foo/bar
cd /tmp/file/
cd ..
cd a/../subfile
pwd
//--다른 경로라 존재할 필요가 없거나 파일일 수도 있다는 점만이 다르다.
path.resolve('/foo/bar', './baz')
// returns
'/foo/bar/baz'
path.resolve('/foo/bar', '/tmp/file/')
// returns
'/tmp/file'
path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif')
// if currently in /home/myself/node, it returns
'/home/myself/node/wwwroot/static_files/gif/image.gif'
from에서 to까지의 상대경로를 처리한다.
때로는 두 개의 절대경로를 가지고 있고 하나에서 다른 하나로의 상대경로를 얻어야 한다. 사실 이는 path.resolve의 반대 변환이다. 이 의미를 다음 예제에서 보자.
path.resolve(from, path.relative(from, to)) == path.resolve(to)
//-----------------------------------------------
path.relative('C:\\orandea\\test\\aaa', 'C:\\orandea\\impl\\bbb')
// returns
'..\\..\\impl\\bbb'
path.relative('/data/orandea/test/aaa', '/data/orandea/impl/bbb')
// returns
'../../impl/bbb'
경로의 디렉토리이름을 반환한다. Unix의 dirname 명령어와 비슷하다.
path.dirname('/foo/bar/baz/asdf/quux')
// returns
'/foo/bar/baz/asdf'
경로의 마지막 부분을 반환한다. Unix의 basename 명령어와 비슷하다.
path.basename('/foo/bar/baz/asdf/quux.html')
// returns
'quux.html'
path.basename('/foo/bar/baz/asdf/quux.html', '.html')
// returns
'quux'
경로의 마지막 부분의 문자열에서 마지막 '.'에서부터 경로의 확장자를 반환한다. 경로의 마지막 부분에 '.'가 없거나 첫 글자가 '.'이라면 빈 문자열을 반환한다.
path.extname('index.html')
// returns
'.html'
path.extname('index.')
// returns
'.'
path.extname('index')
// returns
''
플랫폼의 파일 구분자. '\\'나 '/'이다.
'foo/bar/baz'.split(path.sep)
// returns
['foo', 'bar', 'baz']
플랫폼에 특화된 경로 구분자인 ;나 ':'이다.
console.log(process.env.PATH)
// '/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin'
process.env.PATH.split(path.delimiter)
// returns
['/usr/bin', '/bin', '/usr/sbin', '/sbin', '/usr/local/bin']

| [jQuery] id like 찾기 (0) | 2021.08.19 |
|---|---|
| 메일 수신확인 원리 - 웹서비스 (0) | 2021.08.11 |
| [Node.js] SyntaxError: await is only valid in async function (0) | 2021.08.04 |
| Bootstrap modal 사이즈 및 위치 조절 (0) | 2021.08.03 |
| [Node.js] 파일 업로드 하기 (multer 모듈 사용 ) (0) | 2021.07.23 |
우리가 페이스북을 죽일 뭔가를 만들어내지 못한다면,
다른 누군가가 만들 것이다. 인터넷은 우호적인 장소가 아니다.
존재감을 유지하지 못하면 폐허를 남기는 사치조차 누릴 수 없다.
흔적없이 사라지고 만다.
- 마크 저커버그, 페이스북 창업자
‘현존하는 모든 제도와 시스템과 상품과 솔루션이
처음 만들어질 때처럼 지금도 여전히 필요한지, 지금도 경쟁력이 있는 건지
주기적으로 검토해, 가치를 창출하지 못하는 것이 발견되면
스스로 파괴’할 줄 알아야 합니다.
스스로 나를 파괴하지 못하면, 남에 의해 파괴될 가능성이 높아집니다.
스스로 파괴하면 더 큰 발전이 따라오지만, 남에 의해 파괴되면 소멸만이 남게 됩니다.
| 욕심이 큰 사람은 잘 버릴 줄 안다 (0) | 2021.08.12 |
|---|---|
| 진화는 실패를 반복해온 결과다 (0) | 2021.08.11 |
| 걱정의 크기가 그릇의 크기를 결정한다 (0) | 2021.08.09 |
| 정말로 성공하고 싶은가 (0) | 2021.08.09 |
| 리더는 사랑 받기를 기대해서는 안된다 (0) | 2021.08.05 |

나무야,
하루 종일 서 있으면 지루하지 않아?
- 괜찮아.
우리 심심한데 몸풀기 체조하자
- 좋아.
자, 나 따라서 시작해
하나 둘 셋 넷 다섯 여섯 일곱 여덟
어때, 시원하고 재밌지?
- 그래, 그래.
지루함도 졸림도 싹 날려준 바람아
정말 고마워!
- 조오복의《행복한 튀밥》중에서 -
* 한자리에 꼼짝없이
서 있는 나무에게 바람이 다가와 말을 겁니다.
그래서 흔들흔들 몸풀기 체조가 시작됩니다.
나무도 때로 바람과 더불어 체조를 합니다.
그래야 지루함도 졸림도 날아갑니다.
사람은 더 말할 것도 없습니다.
때때로 몸을 풀어야 합니다.
정신도 함께 맑아집니다.
| 허둥지둥 쫓기지 않으려면 (0) | 2021.08.12 |
|---|---|
| 세월이 지나도 변하지 않는 것 (0) | 2021.08.11 |
| 슬픈 일 (0) | 2021.08.09 |
| 빈둥거림의 미학 (0) | 2021.08.09 |
| 성냄(火) (0) | 2021.08.09 |
| ROGER, 료카이(了解) - 수신완료(received) (0) | 2021.11.24 |
|---|---|
| [코로나] COVID19 실시간 현황 - https://corona-live.com/ (0) | 2021.08.11 |
| 펩시 수육 만들기 - https://www.10000recipe.com/recipe/6910413 (0) | 2021.08.09 |
| [코로나]백신예약 대상자 - 18~49세 코로나19 예방접종 사전예약 일정 및 예약 안내(10부제 등), 사전예약꿀팁 (0) | 2021.08.09 |
| 코로나바이러스-19 (0) | 2021.08.05 |