값 (표현[, ...] ) [, ...]
[주문 방법정렬_표현[ ASC | 설명 | 사용연산자] [, ...] ]
[ 한계개수| 모두 ]
[ 오프셋시작[행 | 행 ] ]
[ 먼저 가져오기 | 다음 [개수] 행 | 행 만 ]
값행 값 또는 집합을 계산합니다. 값 표현식으로 지정된 행 값입니다. 가장 일반적으로 a를 생성하는 데 사용됨"상수 테이블"더 큰 명령 내에서 사용할 수 있지만 자체적으로 사용할 수 있습니다.
하나 이상의 행이 지정되면 모든 행에는 다음이 있어야 합니다. 동일한 수의 요소. 결과의 데이터 유형 테이블의 열은 명시적 또는 다음을 사용하여 해당 열에 나타나는 표현식 유형을 유추합니다. 와 같은 규칙입니다유니언(참조사설 토토 사이트 : 문서 : 9.1 : Union, Case 및 관련 구성).
더 큰 명령 내에서,값이다 어디에서나 구문적으로 허용됨선택입니다. a처럼 취급되기 때문에선택문법에 따라 다음을 사용할 수 있습니다.주문 기준, 제한(또는 동등하게먼저 가져오기) 및오프셋a가 포함된 절값명령.
계산하여 삽입할 상수 또는 표현식 결과 테이블(행 집합)에 표시된 위치입니다. 에서값상단에 목록이 나타남 수준의삽입,표현다음으로 대체 가능기본값다음을 나타냅니다. 대상 열의 기본값을 삽입해야 합니다.기본값다음의 경우에는 사용할 수 없습니다.값다른 곳에 나타남 컨텍스트.
정렬 방법을 나타내는 표현식 또는 정수 상수 결과 행. 이 표현식은 열을 참조할 수 있습니다. 의값결과는 다음과 같습니다열1, 열2, 등. 자세한 내용은 참조ORDER BY 조항.
정렬 연산자. 자세한 내용은 참조ORDER BY 조항.
반환할 최대 행 수. 자세한 내용은 참조한도 절.
반환을 시작하기 전에 건너뛸 행 수 행. 자세한 내용은 참조LIMIT 조항.
값매우 큰 숫자가 포함된 목록 메모리 부족이 발생할 수 있으므로 행을 피해야 합니다. 실패 또는 성능 저하.값내부에 나타남삽입특집입니다 경우(원하는 열 유형이 다음에서 알려져 있기 때문입니다.삽입의 대상 테이블이며 반드시 그럴 필요는 없습니다. 를 스캔하여 추론함값목록), 그래서 다른 것보다 더 큰 목록을 처리할 수 있습니다. 컨텍스트.
맨손으로값명령:
VALUES (1, '1'), (2, '2'), (3, '3');
이것은 2개의 열과 3개의 행으로 구성된 테이블을 반환합니다. 그것은 사실상 다음과 같습니다:
SELECT 1 AS 열1, '1' AS 열2 유니온 올 SELECT 2, '둘' 유니온 올 3, '3'을 선택하세요.
더 일반적으로는,값은(는) 더 큰 SQL 명령. 가장 일반적인 용도는 다음과 같습니다.삽입:
INSERT INTO 영화(코드, 제목, 했던 일, 날짜_제작, 종류)
VALUES ('T_601', '요짐보', 106, '1961-06-16', '드라마');
다음 맥락에서삽입, 항목 에이값목록은 다음과 같습니다.기본값열 기본값이 다음과 같아야 함을 나타냅니다. 값을 지정하는 대신 여기에서 사용하십시오.
영화 값에 삽입
('UA502', '바나나', 105, DEFAULT, '코미디', '82분'),
('T_601', '요짐보', 106, DEFAULT, '드라마', DEFAULT);
값또한 다음과 같은 경우에 사용할 수 있습니다. 보결-선택15000_15040발신절:
선택 f.*
FROM 영화 f, (VALUES('MGM', 'Horror'), ('UA', 'Sci-Fi')) AS t(스튜디오, 종류)
여기서 f.studio = t.studio AND f.kind = t.kind;
UPDATE 직원 SET 급여 = 급여 * v.increase
FROM (VALUES(1, 200000, 1.2), (2, 400000, 1.4)) AS v (depno, 목표, 증가)
여기서 Employees.depno = v.depno AND Employees.sales = v.target;
참고하세요.AS절이 필요합니다 언제값다음에서 사용됩니다.발신절, 마찬가지로선택. 반드시 필요한 것은 아닙니다.AS절은 모든 열의 이름을 지정하지만 그렇게 하는 것이 좋습니다. (기본 열 이름은값아르열1, 열2등젠 토토, 그런데 이 이름들은 다른 데이터베이스 시스템에서는 다를 수 있습니다.)
언제값다음에서 사용됨삽입, 값은 모두 자동으로 강제 변환됩니다. 해당 대상 열의 데이터 유형에. 언제 다른 상황에서 사용되는 경우에는 올바른 데이터 유형. 항목이 모두 리터럴로 인용된 경우 상수, 첫 번째를 강제하는 것만으로도 충분합니다. 모두에 대해 가정된 유형:
SELECT * FROM 머신
WHERE ip_address IN (VALUES('192.168.0.1'::inet), ('192.168.0.10'), ('192.168.1.43'));
팁:간단한 경우IN테스트, 스칼라 목록 형식을 사용하는 것이 더 좋습니다.IN글을 쓰는 것보다값위와 같이 쿼리합니다. 목록 스칼라 방법은 쓰기가 덜 필요하고 더 많은 경우가 많습니다. 효율적인.