반응형

oracle 54

SQL 'where' 절의 조건 실행 순서

SQL 'where' 절의 조건 실행 순서 나는 내 where 조항에 다음과 같은 조건이 있습니다. WHERE d.attribute3 = 'abcd*' AND x.STATUS != 'P' AND x.STATUS != 'J' AND x.STATUS != 'X' AND x.STATUS != 'S' AND x.STATUS != 'D' AND CURRENT_TIMESTAMP - 1 < x.CREATION_TIMESTAMP 다음 중 어떤 조건이 먼저 실행됩니까?오라클을 사용하고 있습니다. 실행 계획에서 이러한 세부 정보를 얻을 수 있습니까? (여기에 있는 데이터베이스에서 해당 작업을 수행할 권한이 없습니다. 그렇지 않았다면 시도했을 것입니다.)실행 계획을 볼 수 있는 권한이 없다고 확신하십니까?AUTOTTRACE..

it-source 2023.06.20

SQL: AVG(NULL 값 포함)

SQL: AVG(NULL 값 포함) AVG() 함수는 NULL 값을 무시하는 것으로 알고 있습니다. 그래서 AVG(4,4,4,4,4,4,NULL) --> 4. 저 같은 경우에는 이런 일이 일어나지 않았으면 합니다. 저는 그런 솔루션이 필요합니다: AVG(4,4,4,4,4,NULL) --> 3,33 테이블 자체에서 NULL 값을 직접 바꾸지 않고 사용할 수 있습니다. 이것을 할 수 있는 방법이 있습니까?사용하다coalesce()null 열의 실제 값 0을 반환하는 방법 select avg(coalesce(some_column, 0)) from ... AVG 동작에 대해 올바른 설명입니다. COALESCE를 사용하여 집계에서 NULL을 0으로 변환합니다. 이 답변은 "Oracle에서 SUM(null)이 0이..

it-source 2023.06.20

SQL 성능: DISTINCT 대 GROUP BY 선택

SQL 성능: DISTINCT 대 GROUP BY 선택 약간 느린 속도로 실행되고 있는 기존 Oracle 데이터베이스 기반 애플리케이션에 대한 쿼리 시간을 개선하려고 노력했습니다.응용 프로그램은 아래 쿼리와 같이 실행하는 데 한 시간 이상 걸릴 수 있는 몇 가지 큰 쿼리를 실행합니다. 교체DISTINCTGROUP BY아래 쿼리의 절은 실행 시간을 100분에서 10초로 단축했습니다.제가 알기로는SELECT DISTINCT그리고.GROUP BY거의 같은 방식으로 작동합니다.실행 시간 사이에 왜 그렇게 큰 차이가 나는 겁니까?백엔드에서 쿼리가 실행되는 방식의 차이점은 무엇입니까?지금까지 어떤 상황이 발생한 적이 있습니까?SELECT DISTINCT더 빨리 달립니까? 에서 ": 다쿼리에서음참고"입니다.WHERE..

it-source 2023.06.10

Oracle 11g(클라이언트)을 제거/완전 삭제하는 방법

Oracle 11g(클라이언트)을 제거/완전 삭제하는 방법 닫았습니다. 이 질문은프로그래밍이나 소프트웨어 개발에 관한 것이 아닙니다.현재 답변을 받고 있지 않습니다. 이 질문은 프로그래머가 주로 사용하는 특정 프로그래밍 문제, 소프트웨어 알고리즘 또는 소프트웨어 도구에 대한 질문은 아닌 것으로 보입니다.질문이 다른 스택 Exchange 사이트에서 토픽에 포함될 것으로 생각되는 경우, 질문에 대한 답변이 가능한 위치에 대해 코멘트를 남길 수 있습니다. 6개월 전에 닫았어요 이 질문을 개선하다 Oracle 11g(클라이언트)을 제거/완전 삭제하는 방법 deinstall.bat이 동작하지 않습니다. 편집: 이 질문을 닫고 삭제한 이유에 대한 자세한 설명:https://meta.stackexchange.com/..

it-source 2023.04.11

Oracle 데이터베이스에 허용된 최대 연결 수를 확인하는 방법은 무엇입니까?

Oracle 데이터베이스에 허용된 최대 연결 수를 확인하는 방법은 무엇입니까? SQL을 사용하여 Oracle 데이터베이스에 허용되는 최대 연결 수를 확인하는 가장 좋은 방법은 무엇입니까?마지막으로 현재 세션 수와 총 허용 수를 나타냅니다(예: "현재 80개 중 23개가 사용되고 있습니다.").Oracle 데이터베이스가 지원하는 연결 수를 결정할 때 적용되는 몇 가지 제한 사항이 있습니다.가장 간단한 방법은 SESSION 파라미터와 V$SESSION을 사용하는 것입니다. 데이터베이스가 허용하도록 구성된 세션 수 SELECT name, value FROM v$parameter WHERE name = 'sessions' 현재 활성 세션 수 SELECT COUNT(*) FROM v$session 단, 앞서 설명..

it-source 2023.03.27

SQL 쿼리의 이력을 확인합니다.

SQL 쿼리의 이력을 확인합니다. 서버에서 SQL 업데이트 쿼리가 실행되어 나중에 많은 문제가 발생했습니다. 문제가 있는 SQL 쿼리를 정확하게 추적할 수 있도록 지난 2개월 동안 실행된 업데이트 쿼리 목록을 가져오려면 어떻게 해야 합니까? select v.SQL_TEXT, v.PARSING_SCHEMA_NAME, v.FIRST_LOAD_TIME, v.DISK_READS, v.ROWS_PROCESSED, v.ELAPSED_TIME, v.service from v$sql v where to_date(v.FIRST_LOAD_TIME,'YYYY-MM-DD hh24:mi:ss')>ADD_MONTHS(trunc(sysdate,'MM'),-2) where절은 옵션입니다.FIRST_LOAD_에 따라 결과를 정렬할 수..

it-source 2023.03.22

날짜 스탬프 파일을 정리하려면 Logrotate

날짜 스탬프 파일을 정리하려면 Logrotate 현재 Cron에서 만든 Oracle Recovery 로그 파일을 정리하는 방법을 찾고 있습니다. 현재 Oracle 스탠바이 복구 프로세스는 다음 명령을 사용하여 15분마다 Cron에 의해 호출됩니다. 0,15,30,45 * * * * /data/tier2/scripts/recover_standby.sh SID >> /data/tier2/scripts/logs/recover_standby_SID_`date +\%d\%m\%y`.log 2>&1 그러면 다음과 같은 파일이 생성됩니다. $ ls -l /data/tier2/scripts/logs/ total 0 -rw-r--r-- 1 oracle oinstall 0 Feb 1 23:45 recover_standby..

it-source 2023.03.12

oracle - 커밋해야 할 스테이트먼트는 무엇입니까?

oracle - 커밋해야 할 스테이트먼트는 무엇입니까? 잠금을 피하기 위해 테이블에서 추가 작업을 수행하기 전에 커밋해야 할 스테이트먼트 목록은 무엇입니까?나는 복수의 스테이트먼트와 트랜잭션의 무결성을 가지는 완전한 트랜잭션을 말하는 것이 아니라, 단일 스테이트먼트를 말하는 것입니다. 삽입을 커밋해야 하지만 잘라내기에는 자동 커밋이 있습니다.커밋할 필요가 있는 스테이트먼트의 전체 리스트는 무엇입니까? 커밋 필요(스타리스트): UPDATE INSERT DELETE DML(데이터 조작 언어) 명령을 커밋/롤백해야 합니다.다음은 이러한 명령어 목록입니다. Data Manipulation Language(DML; 데이터 조작 언어) 문은 스키마 개체 내의 데이터를 관리하는 데 사용됩니다.몇 가지 예: INSER..

it-source 2023.03.07

Oracle: 행이 없는 경우 삽입하는 방법

Oracle: 행이 없는 경우 삽입하는 방법 PL/SQL(oracle)에서 행이 없는 경우 가장 쉽게 삽입할 수 있는 방법은 무엇입니까? 나는 다음과 같은 것을 원한다. IF NOT EXISTS (SELECT * FROM table WHERE name = 'jonny') THEN INSERT INTO table VALUES ("jonny", null); END IF; 근데 안 되네. 주의: 이 표에는 이름과 기간이라는 두 개의 필드가 있습니다.하지만 이름만 PK야.INSERT INTO table SELECT 'jonny', NULL FROM dual -- Not Oracle? No need for dual, drop that line WHERE NOT EXISTS (SELECT NULL -- canoni..

it-source 2023.03.02

Oracle에서 선택 쿼리에 대한 기본 행 순서 지정

Oracle에서 선택 쿼리에 대한 기본 행 순서 지정 Oracle에서 "order by" 절이 지정되지 않은 경우 선택 쿼리의 기본 행 순서는 무엇입니까? 그런가요? 행이 삽입된 순서 기본 순서는 전혀 없습니다. 위의 항목 중 아무 것도 아니다. Tom Kyte에 따르면 "질문에 "주문 기준"을 추가하지 않는 한 반환되는 행의 순서에 대해 아무 말도 할 수 없습니다.'반환되는 행의 순서에 의존할 수 없습니다'를 제외하면요." 이 질문은 asktom.com 에서 참조해 주세요. ROWNUM은 물리적으로 존재하지 않기 때문에 자유로울 수 없습니다.테이블에서 레코드를 가져온 후 ROWNUM이 할당되므로 "WHERE ROWNUM = 5"는 항상 레코드를 선택하지 못합니다. @ammoQ: GROUP BY 오더에 ..

it-source 2023.02.25
반응형