'전체 글'에 해당되는 글 396건

  1. 2024.01.18 [Oracle] VARCHAR형 컬럼 order by 시 오류 해결
  2. 2023.12.29 [Oracle] ALL_OBJECTS, USER_SOURCE
  3. 2023.12.04 팝업호출 + 이미지 + 클릭 이벤트
  4. 2023.11.29 [Oracle] ROWNUM
  5. 2023.11.29 scp 와 pscp 2
  6. 2023.11.28 [Oracle] ORA-01476 제수가 0 입니다
  7. 2023.11.23 [Oracle] WINDOWING 절, ROW, RANGE
  8. 2023.11.21 xml 파일에서
  9. 2023.11.14 조건에 대한 테이블 검색 1
  10. 2023.11.14 [Oracle] DB 세션 kill 관련

[Oracle] VARCHAR형 컬럼 order by 시 오류 해결

|
-- org_id 가 VARCHAR 형 인 경우
SELECT *
FROM ZZZ
ORDER BY LPAD(org_id, 3, '0') -- 전체 길이를 3으로 두고 빈자리를 0 으로 채움.

-- ORDER BY TO_NUNBER(org_id) -- org_id 에 숫자가 아닌 값이 올 경우 error 발생
And

[Oracle] ALL_OBJECTS, USER_SOURCE

|

ALL_OBJECTS

- 테이블, 트리거, 프로시저

SELECT *
FROM ALL_OBJECTS
WHERE OBJECT_TYPE LIKE '오브젝트타입'  -- 테이블, 프로시저,함수,트리거 등 오브젝트
AND OBJECT_NAME='테이블 이름'          -- 테이블명 혹은 프로시저,함수,트리거 등 오브젝트명

 

USER_SOURCE

- 트리거, 프로시저, 패키지, 함수

--BC_K_SALESORDER INSERT 문 찾기
SELECT *
FROM USER_SOURCE 
WHERE 1=1
AND TEXT LIKE '%INSERT INTO BC_K_SALESORDER%'
ORDER BY NAME, LINE

'DATABASE(SQL)' 카테고리의 다른 글

[MS-SQL] 프로시저 찾기  (0) 2024.02.08
[Oracle] VARCHAR형 컬럼 order by 시 오류 해결  (0) 2024.01.18
[Oracle] ROWNUM  (0) 2023.11.29
[Oracle] ORA-01476 제수가 0 입니다  (0) 2023.11.28
[Oracle] WINDOWING 절, ROW, RANGE  (0) 2023.11.23
And

팝업호출 + 이미지 + 클릭 이벤트

|
function openNoticeImg() {
    var url = "${contextPath}/images/popup/20231204.png"; // 팝업 이미지 경로
    var img = new Image();
    img.src = url;
    // var img_width = img.width;
    // var win_width = img.width + 25;
    // var height = img.height + 30;
    var OpenWindow = window.open('', '_blank', 'width=' + 600 + ', height=' + 600 + ', menubars=no, scrollbars=no');

    var targetUrl = "https://naver.com/aasdfewrer"; // 팝업 이미지 클릭 시 url 경로
    var content = '<a href="javascript:void(0);" onclick="window.open(\''+ targetUrl + '\');">'; // 팝업이미지 onclick 이벤트 적용

    OpenWindow.document.write("<style>body{margin:0px;}</style>"
                        + content

                        + "<img src="
                        + url
                        + " width=" + 600
                        + "' >"

                        + "</a>"
                        )
}

 

* Uncaught SyntaxError: missing ) after argument list 오류

→ 따움표를 시작하는 부분과 끝나는 부분에서 \, 즉 역슬래시를 붙여주면 따움표로 인식하여 정상적으로 작동이 됨

즉, 시작부분은 \'  끝나는 부분은 \'  으로 하란 얘기임.

 

참고 : https://blog.naver.com/racoon_z/220606460942

'JavaScript' 카테고리의 다른 글

reduce()  (0) 2023.01.10
Reflow  (0) 2023.01.02
디바운스(Debounce), 스로틀(Throttle), 레이아웃 스레싱(Layout Thrashing)  (0) 2023.01.02
x,y 두 좌표의 직선거리 구하기  (0) 2022.12.16
dotenv, express, axios  (0) 2021.12.31
And

[Oracle] ROWNUM

|

[ROWNUM 이란?]

- WHERE 절에 의해 의해 추출된 DATA SET에 ROW 단위로 붙는 순번

- 조회되는 행 수를 제한할 때 많이 사용하지만 제약이 존재 ( ROWNUM = 1 이외에는 사용불가 )

- ROWNUM에 별칭을 주어서 인라인 뷰로 사용하면 위 제약이 해소됨

SELECT
	EXT_ROW.MON
	, ...

FROM (
	SELECT
		ROWNUM AS RN
		, ...
	FROM (
		SELECT 
			...
		FROM FI_DOCU_DAY_SUM A
		...
		) ALL_YEAR_SUM
) EXT_ROW
WHERE EXT_ROW.RN <![CDATA[>=]]> 2 -- 2행 이상 부터 추출 가능

 

'DATABASE(SQL)' 카테고리의 다른 글

[Oracle] VARCHAR형 컬럼 order by 시 오류 해결  (0) 2024.01.18
[Oracle] ALL_OBJECTS, USER_SOURCE  (0) 2023.12.29
[Oracle] ORA-01476 제수가 0 입니다  (0) 2023.11.28
[Oracle] WINDOWING 절, ROW, RANGE  (0) 2023.11.23
xml 파일에서  (0) 2023.11.21
And

scp 와 pscp

|

scp란?

- secure copy의 줄임말

- ssh를 이용하여 네트워크로 연결된 호스트 간에 파일을 주고 받는 명령어

- 원격지에 있는 파일과 디렉터리를 보내거나 가져올 때 사용하는 파일 전송 프로토콜

- ssh와 동일한 22번 포트와 identity file을 사용해서 파일을 송수신하기 때문에 안정된 프로토콜

 

* 보내고자 하는 파일 디렉토리에서 git bash 를 이용해서 진행한다.

SoftIn@DES2342342312GM MINGW64 /d/work_docu/프레임워크 & 인프라/CG/톰캣 버전업
$ scp -r apache-tomcat-8.5.88 ncloud@11.10.12.20:/home1/ncloud/cg-dev/tomcat-test3

 

로컬 → 원격지로 파일 전송

- 단일 파일을 원격지로 전송

$ scp dump.sql root@192.168.000.000:/dump
// scp [옵션] [파일명] [원격지_id]@[원격지_ip]:[받는 위치]

- 복수 파일을 원격지로 전송

$ scp dump.sql dump2.sql root@192.168.000.000:/dump
// scp [옵션] [파일명 1] [파일명 2] [원격지_id]@[원격지_ip]:[받는 위치]

- 여러 파일이 포함된 디렉토리를 원격지로 전송

$ scp -r dumpdir root@192.168.000.000:/dump
// scp [옵션] [디렉터리 이름] [원격지_id]@[원격지_ip]:[보낼 경로]

 

 

원격지 → 로컬로 파일 전송

- 단일 파일을 로컬로 전송

$ scp root@192.168.000.000:/dump.sql /dumpdir
// scp [옵션] [원격지_id]@[원격지_ip]:[원본 위치] [받는 위치]

- 복수 파일을 로컬로 전송

$ scp root@192.168.000.000:"/dump1.sql /dump2.sql" /dumpdir
// scp [옵션] [원격지_id]@[원격지_ip]:[원본 위치 파일][원본 위치 파일] [받는 위치]

- 여러 개의 파일이 포함된 디렉토리를 로컬로 전송

$ scp -r root@192.168.000.000:/dump1 /dump2
// scp [옵션] [원격지_id]@[원격지_ip]:[디렉터리 위치] [받을 경로]

 

옵션

r 디렉토리 내 모든 파일/디렉토리 복사 scp -r
p (소문자) 원본 권한 속성 유지 복사 scp -p
P (대문자) 포트 번호 지정 복사 scp -P [포트번호]
c (소문자) 압축 복사 scp -c
v 과정 출력 복사 scp -v
아카이브 모드 복사 scp -a

- 옵션 구분이 존재하지 않을 경우 그냥 전송

 

 

================================================================================

 

pscp

- cmd 창에서 putty 설치된 경로로 이동

- 명령어 입력

pscp -p [port번호] admin@xxx.xxx.xx.xx:/home/log/zzz.log d:\

admin@xxx.xxx.xx.xx	계정명@서버ip주소
/home/log/zzz.log	서버에서 다운받을 대상 파일 경로
d:\					로컬에 다운받을 경로

 

And

[Oracle] ORA-01476 제수가 0 입니다

|

오류 없이 데이터를 뽑기 위해서 아래와 같이 작성한다.

SELECT NVL(분자 / DECODE(분모, 0, NULL, 분모), 0) FROM 테이블;

 

분자

------

분모

'DATABASE(SQL)' 카테고리의 다른 글

[Oracle] ALL_OBJECTS, USER_SOURCE  (0) 2023.12.29
[Oracle] ROWNUM  (0) 2023.11.29
[Oracle] WINDOWING 절, ROW, RANGE  (0) 2023.11.23
xml 파일에서  (0) 2023.11.21
조건에 대한 테이블 검색  (1) 2023.11.14
And

[Oracle] WINDOWING 절, ROW, RANGE

|
RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW -- 첫번째행 ~ 현재행

ROWS BETWEEN 4 PRECEDING AND CURRENT ROW	-- 이전 행 4개 ~ 현재행

ROWS BETWEEN UNBOUNDED PRECEDING AND 1 PRECEDING	-- 첫번째 행 ~ 이전행 1번째

RANGE BETWEEN UNBOUNDED PRECEDING AND 1 PRECEDING -- 동작X

ROWS BETWEEN UNBOUNDED PRECEDING AND (CURRENT ROW - 1) -- 동작X

[WINDOW 함수]

- 행과 행 간의 관계를 정의하고, 행과 행을 비교, 연산하는 것을 도와주는 함수

SELECT 
	
	...
    SUM( -- sum 대신 avg 가 들어갈 수 있다.
    	... 
    ) OVER (
    	[PARTITION BY 컬럼]
        , [ORDER BY 절]
        , [WINDOWING 절]
    )
FROM 테이블명;

 

[WINDOWING절]

- ROWS

  > 개별 행(row)을 기준으로 범위를 지정

 

- RANGE

  > 행이 가지고 있는 값을 기준으로 범위를 지정

 

- CURRENT ROW

  > 현재 행

 

- UNBOUNDED PRECEDING

  > 첫번째 행

 

- UNBOUNDED FOLLOWING

  > 마지막 행

 

- 1 PRECEDING

  > 이전행에서 1개까지 선택

 

- 2 FOLLOWING

  > 다음행에서 2개까지 선택

 

-- 예시
...
) OVER (
    PARTITION BY
        ...
    ORDER BY 

        INSERT_DT	-- 기준 컬럼

        ROWS BETWEEN	-- ROWS 기준 범위 설정
            UNBOUNDED PRECEDING	-- 첫번째 행부터
        AND
            1 PRECEDING	-- 1번째 이전행까지
)

 

 

* 참고사이트

https://gent.tistory.com/473
https://www.dba-oracle.com/t_advanced_sql_windowing_clause.htm

'DATABASE(SQL)' 카테고리의 다른 글

[Oracle] ROWNUM  (0) 2023.11.29
[Oracle] ORA-01476 제수가 0 입니다  (0) 2023.11.28
xml 파일에서  (0) 2023.11.21
조건에 대한 테이블 검색  (1) 2023.11.14
[Oracle] DB 세션 kill 관련  (0) 2023.11.14
And

xml 파일에서

|
-- AND A.CMNY_DT BETWEEN TO_DATE(SUBST(#{s_bill_st_dt},1,4) || '01

위와 같이 주석이 되어 있을때 아래 형태 값이 포함되어 있으면

 

#{OOO} 

 

오류를 내뱉는다.(따라서 깔끔하게 삭제해야한다.)

'DATABASE(SQL)' 카테고리의 다른 글

[Oracle] ORA-01476 제수가 0 입니다  (0) 2023.11.28
[Oracle] WINDOWING 절, ROW, RANGE  (0) 2023.11.23
조건에 대한 테이블 검색  (1) 2023.11.14
[Oracle] DB 세션 kill 관련  (0) 2023.11.14
[MS-SQL] 프로시저 검색  (0) 2023.11.14
And

조건에 대한 테이블 검색

|
-- maria DB
-- 스키마에서 컬럼명으로 검색 후 해당 컬럼명이 쓰인 테이블 속성들을 조회
SELECT UPPER(T.TABLE_NAME) AS '테이블명'
, T.TABLE_COMMENT AS '테이블설명'
, C.COLUMN_NAME AS '컬럼'
, C.COLUMN_COMMENT AS '컬럼명'
, UPPER(CONCAT(C.DATA_TYPE,'(',IFNULL(C.CHARACTER_MAXIMUM_LENGTH,IFNULL(C.NUMERIC_PRECISION,'')),')')) AS '데이터타입'
, CASE WHEN C.COLUMN_KEY = 'PRI' THEN 'PK'
ELSE ''
END AS 'PK'
, CASE WHEN C.IS_NULLABLE = 'NO' THEN 'Y' ELSE '' END AS 'NOT_NULL'
-- , C.COLUMN_KEY
-- , C.IS_NULLABLE
FROM INFORMATION_SCHEMA.TABLES T
INNER JOIN INFORMATION_SCHEMA.COLUMNS C
ON C.TABLE_NAME = T.TABLE_NAME
WHERE C.TABLE_SCHEMA IN ('sams') // 검색 대상이 되는 스키마명 입력
AND (T.TABLE_NAME LIKE 'SFI%' OR T.TABLE_NAME LIKE 'SSP%') // 테이블 검색조건을 입력
AND C.COLUMN_NAME LIKE '%ORG%' -----------> like 검색으로 찾고자 하는 컬럼명 검색어를 입력
ORDER BY T.TABLE_SCHEMA, T.TABLE_NAME, C.ORDINAL_POSITION;

-- Oracle 컬럼명으로 테이블 찾기
select TABLE_NAME, COLUMN_NAME from ALL_TAB_COLUMNS
where COLUMN_NAME LIKE '%컬럼명%';

'DATABASE(SQL)' 카테고리의 다른 글

[Oracle] WINDOWING 절, ROW, RANGE  (0) 2023.11.23
xml 파일에서  (0) 2023.11.21
[Oracle] DB 세션 kill 관련  (0) 2023.11.14
[MS-SQL] 프로시저 검색  (0) 2023.11.14
[Oracle] 월별 누적 합계  (0) 2023.10.20
And

[Oracle] DB 세션 kill 관련

|
-- active 상태 확인 
SELECT
  a.sid,       -- SID
  a.serial#,   -- 시리얼번호
  a.status,    -- 상태정보
  a.process,   -- 프로세스정보
  a.username,  -- 유저
  a.osuser,    -- 접속자의 OS 사용자 정보
  b.sql_text,  -- sql
  c.program    -- 접속 프로그램
FROM
  v$session a,
  v$sqlarea b,
  v$process c
WHERE
  a.sql_hash_value=b.hash_value
  AND a.sql_address=b.address
  AND a.paddr=c.addr
  AND a.status='ACTIVE';								
 
 -- DB 트랜잭션 상태 확인
 SELECT a.sid
 ,a.serial#
 ,a.username
 ,a.process
 ,b.object_name
 ,DECODE (c.lmode, 2, 'RS', 3, 'RX', 4, 'S', 5, 'SRX', 8, 'X', 'NO') "TABLE LOCK"
 ,DECODE (a.command, 2, 'INSERT', 3, 'SELECT', 6, 'UPDATE', 7, 'DELETE', 12, 'DROP TABLE', 26, 'LOCK TABLE', 'UNknown') "SQL"
 ,DECODE (a.lockwait, NULL, 'NO wait', 'Wait') "STATUS"
 FROM v$session a, dba_objects b, v$lock c
 WHERE a.sid = c.sid AND b.object_id = c.id1
 AND c.TYPE = 'TM';
 
 
 
 -- kill
 ALTER SYSTEM KILL SESSION '14, 54507' -- {#sid}, {#serial}

'DATABASE(SQL)' 카테고리의 다른 글

xml 파일에서  (0) 2023.11.21
조건에 대한 테이블 검색  (1) 2023.11.14
[MS-SQL] 프로시저 검색  (0) 2023.11.14
[Oracle] 월별 누적 합계  (0) 2023.10.20
[Oracle] 해당월 전월의 마지막일자 구하기  (1) 2023.10.18
And
prev | 1 | 2 | 3 | 4 | 5 | 6 | ··· | 40 | next