반응형

oracle 50

Oracle REPLACE() 함수가 캐리지 리턴 및 라인 피드를 처리하지 않습니다.

Oracle REPLACE() 함수가 캐리지 리턴 및 라인 피드를 처리하지 않습니다. 자리가 있습니다.varchar2(100)때때로 캐리지 리턴 & 라인 레이블을 포함하는 열입니다.SQL 쿼리에서 해당 문자를 제거하고 싶습니다.다음을 사용합니다. REPLACE( col_name, CHR(10) ) 이는 아무런 영향을 미치지 않지만 'CHR(10)'을 보다 일반적인 '글자' 문자로 대체하면 REPLACE 기능이 다르게 작동한다는 것을 증명합니다.우리는 또한 발견했습니다. REPLACE( col_name, CHR(10), '_' ) 새 줄의 위치를 찾지만 밑줄을 대체하지 않고 줄 뒤에 삽입합니다. Oracle8i에서 실행 중.업그레이드는 선택사항이 아닙니다.또 다른 방법은 다음과 같습니다. TRANSLATE..

IT 2023.06.12

길이가 큰 VARCHAR2 열 정의의 영향

길이가 큰 VARCHAR2 열 정의의 영향 을 다을사용열정어있효까니로 정의하면 어떤 효과가 있습니까?VARCHAR2(1000)에 VARCHAR2(10)Oracle에서 값이 10바이트 이하인 경우 열에 값을 저장하는 데 필요한 공간만 사용합니까? 아니면 테이블스페이스/인덱스의 크기/성능에 부정적인 영향을 미칩니까?대답은 데이터베이스 테이블의 열을 말하는 것인지 아니면 PL/SQL 프로그램의 변수를 말하는 것인지에 따라 달라집니다. 데이터베이스 열 사용되는 스토리지의 양은 저장된 데이터의 크기에 비례합니다. PL/SQL 변수 변수의 크기가 1~4000(11g+)/1999(10g 이하)로 선언되면 최대 길이에 대해 메모리가 할당됩니다(즉, VARCHAR2(100)에는 최소 100바이트의 메모리가 필요함). 변..

IT 2023.06.07

설명 계획을 사용하여 쿼리를 최적화하는 방법은 무엇입니까?

설명 계획을 사용하여 쿼리를 최적화하는 방법은 무엇입니까? 저는 직장에서 몇 가지 sql 쿼리를 최적화하는 일을 맡았습니다.제가 찾은 모든 것은 설명 계획을 사용하여 문제 영역을 식별하는 것을 의미합니다.내가 정확히 어떤 설명 계획을 가지고 있는지 알 수 없는 문제가 나에게 말하고 있습니다.비용, 카디널리티 및 바이트를 얻을 수 있습니다. 이것은 무엇을 의미하며, 이를 어떻게 가이드로 사용해야 합니까?낮은 숫자가 더 나은가요?더 좋아요?어떤 의견이라도 주시면 대단히 감사하겠습니다. 아니면 질문을 최적화할 수 있는 더 나은 방법이 있다면 관심이 있을 것입니다.나는 또한 당신이 오라클을 사용하고 있다고 생각합니다.그리고 우선 설명 계획 웹 페이지를 확인해 보는 것을 추천합니다.최적화에는 많은 것이 있지만 배..

IT 2023.06.07

SQLPLUS를 사용하여 명령줄에서 PL/SQL 스크립트에 인수를 전달하려면 어떻게 해야 합니까?

SQLPLUS를 사용하여 명령줄에서 PL/SQL 스크립트에 인수를 전달하려면 어떻게 해야 합니까? SQLPLUS를 사용하여 명령줄에서 PL/SQL 스크립트에 인수를 전달하려면 어떻게 해야 합니까?이렇게 PL/SQL 스크립트를 호출할 수 있지만 성공하려면 스크립트에 인수가 필요합니다.sqlplus를 실행하려면 어떻게 해야 하나요?스크립트에 인수를 전달할 수 있도록 exe를 지정하시겠습니까? @ECHO off // where HOST030 is a tnsnames alias to a machine, port, and instance sqlplus.exe MYUSER/mypassword@HOST030 < refreshDataOnOracle.sql pause 답변을 검색하려고 했지만 SQLPLUS에 대한 "인수..

IT 2023.03.09

Oracle: WHERE 절에서 (+)는 무엇을 합니까?

Oracle: WHERE 절에서 (+)는 무엇을 합니까? 이행(일반화)하려는 Oracle 기반 애플리케이션에서 다음을 발견했습니다. SELECT Table1.Category1, Table1.Category2, count(*) as Total, count(Tab2.Stat) AS Stat FROM Table1, Table2 WHERE (Table1.PrimaryKey = Table2.ForeignKey(+)) GROUP BY Table1.Category1, Table1.Category2 무엇인가.(+)WHERE 조항에서 무엇을 할 것인가?그렇게 쓰는 건 처음 봐요."="의 어느 쪽에 "(+)가 있느냐에 따라 왼쪽 아우터 또는 오른쪽 아우터 조인(이 경우 왼쪽 아우터 조인)을 나타냅니다.오래된 Oracle ..

IT 2023.02.27

제약 조건 변경 방법

제약 조건 변경 방법 SQL 제약 조건 변경 방법 아래는 나의 제약사항 중 하나이다. CONSTRAINT ACTIVEPROG_FKEY1 FOREIGN KEY(ActiveProgCode) REFERENCES PROGRAM(ActiveProgCode), 추가하고 싶다 ON DELETE CASCADE 상기의 제약에 의해서. 기존 제약조건 ACTIVEPROG_FKEY1을 변경하고 추가하는 방법 ON DELETE CASCADE ACTIVEPROG_FKEY1을 구속하다 ACTIVEPROG_FKEY1이 ACTIVEPROG 테이블에 있다고 간주합니다.제약 조건을 변경할 수는 없지만 삭제한 후 다시 생성할 수 있습니다. 이것 좀 봐 ALTER TABLE your_table DROP CONSTRAINT ACTIVEPROG..

IT 2023.02.27

동일한 쿼리에서 모든 열과 개수(*)를 선택하는 방법

동일한 쿼리에서 모든 열과 개수(*)를 선택하는 방법 TSQL에서는 다음 쿼리를 자주 사용합니다. SELECT COUNT(*), * FROM CUSTOMER c WHERE c.Name like 'foo%'; Oracle SQL Developer에서 이 쿼리를 실행하려고 하면 작동하지 않고 오류가 발생합니다. "식 누락" 어떤 구문이 좋을까요? 잘 부탁드립니다.이렇게 하면 성능이 향상됩니다. SELECT COUNT(*) OVER (), c.* FROM CUSTOMER c WHERE c.Name like 'foo%'; 한 가지 방법은 다음과 같은 작업을 수행하는 것입니다.이것에 의해, 각 행의 카운트(*) 결과가 됩니다.그러나 주의하세요. 데카르트조인이 있습니다.foo%와 같은 행이 많으면 성능이 저하됩니다..

IT 2023.02.14

Oracle : 동일한 행의 서로 다른 열에서 최대값을 선택합니다.

Oracle : 동일한 행의 서로 다른 열에서 최대값을 선택합니다. 모든 질문이 제목에 거의 다 들어있다.표의 각 행에 대해 열의 부분 집합의 최대값을 선택합니다. 예를 들어, 이 테이블에서 name m1 m2 m3 m4 A 1 2 3 4 B 6 3 4 5 C 1 5 2 1 결과는 다음과 같습니다. name max A 4 B 6 C 5 쿼리는 호환되는 oracle 8i여야 합니다.이 테스트 데이터가 주어지면... SQL> select * 2 from your_table 3 / NAME M1 M2 M3 M4 ---- ---------- ---------- ---------- ---------- A 1 2 3 4 B 6 3 4 5 C 1 5 2 1 SQL> ...직접 GREATE() 호출은 원하는 결과를 제..

IT 2023.02.14

ORA-01843은 유효한 달이 아닙니다.비교일

ORA-01843은 유효한 달이 아닙니다.비교일 날짜별로 필터링된 테이블에서 데이터를 선택하려고 할 때 문제가 있습니다. 예를 들어 다음과 같습니다. SELECT * FROM MYTABLE WHERE MYTABLE.DATEIN = '23/04/49'; Oracle 오류: Informe de error: Error SQL: ORA-01843: mes no válido 01843. 00000 - "not a valid month" *Cause: *Action: 이 경우 테이블의 소스 데이터가 파손되었을 수 있습니다. 어떻게 하면 이 문제를 해결할 수 있을까요? 이 날짜를 null로 변경할 수 있습니까? 이 선택 결과,select * from nls_session_parameters;는 다음과 같습니다. PA..

IT 2023.02.10

Oracle에서 테이블, 뷰 및 동의어에 대한 모든 인덱스와 해당 열을 찾는 방법

Oracle에서 테이블, 뷰 및 동의어에 대한 모든 인덱스와 해당 열을 찾는 방법 특정 테이블의 인덱스 이름과 해당 열을 나열하는 다음 쿼리를 적어두었습니다. select b.uniqueness, a.index_name, a.table_name, a.column_name from all_ind_columns a, all_indexes b where a.index_name=b.index_name and a.table_name = upper('table_name') order by a.table_name, a.index_name, a.column_position; 이것을 수정해서 만약 내가 통과한다면view또는synonym효과도 있습니다.우리 시스템은 다양한 뷰와 동의어를 가지고 있기 때문에 이름(보기 동의..

IT 2023.02.10
반응형