저는 Sequel을 처음 사용하지만 SQL에서 많은 배경 지식을 가지고 있습니다. 기본적인 쿼리 기능이 작동하지 않는다고 좌절감을 느낍니다. 구문을 올바르게 이해하는 것이 중요합니다. 임시 테이블을 만들고 해당 테이블에 값을 삽입 한 다음 해당 테이블에 대해 쿼리를 실행하고 싶습니다. SQL에서 내가 this-임시 테이블을 만들고 쿼리 할 수 있습니다.
CREATE TABLE #TMP (CHRGCD VARCHAR)
INSERT INTO #TMP SELECT DISTINCT(CHRGCD) FROM PACPTCD WHERE CCTRMDT = '9999-01-01'
SELECT CHRGCD FROM PACPTCD
WHERE CHRGCD NOT IN (SELECT CHRGCD FROM #TMP)
내가 모든 속편에서이 작업을 수행 할 수 있습니다 또는 내가 진짜 테이블을 생성해야 할 것입니다 실행할 것 , 그것을 채우기 위해 별도의 스크립트 실행의 마지막 부분을 실행 질문?
테이블 PACPTCD의 데이터는 CHRGCD에 대해 여러 항목을 가질 수 있지만 CCTRMDT는 다를 수 있습니다. CHRGCD의 값이 9999-01-01이 아닌 모든 인스턴스를 찾으려고합니다. 그것을하는 가장 쉬운 방법 인 것처럼 보입니다. 데이터를 가져 오는 다른 방법에 대한 제안을 엽니 다.
예 아니요. 쿼리에서 중첩 된 선택 항목을 가질 수 있습니다. 내부 select는 임시 정렬 테이블을 작성하고 외부 선택은 해당 임시 테이블에서 선택합니다. SELECT * FROM (SELECT Fname, Lname FROM persons) – TheDude
여기에 임시 테이블을 사용하면 특정 SQL 구현의 결함을 해결할 수있는 것처럼 보입니다. 첫 번째 쿼리를 두 번째 쿼리로 확장하여 성능을 확인해 보았습니까? –
구현을 변경할 수 없으며 어쨌든 성능이 심각합니다. 그냥 미친 뭔가를 찾을 때마다 손바닥 만 마주 칠 수 있습니다. – Carl