[SQL] 테이블 / 뷰에서 SELECT 절에서 n 번째 열을 선택하는 방법이 있나요
SQL테이블 / 뷰에서 SELECT 절에서 n 번째 열을 선택하는 방법이 있나요
나는 수백 열이 GIGANTIC보기를했는데 내가 좋아하는 114 번째 열 뭔가를 선택해야합니다 :
SELECT "144" FROM MyView;
추신 : 분명히, 나는 컬럼의 이름을 모른다. 난 그냥, Excel 파일로 결과 행을 복사 내가 더 디버깅을 할 수있는 내보기 만 n 번째 열을 보여주는 모든 행을 선택 할 수 있도록 EJ 컬럼에 특정 값을 검색.
건배!
해결법
-
==============================
1.당신이 MS SQL Server를 사용하는 경우에 당신은 할 수 있습니다
당신이 MS SQL Server를 사용하는 경우에 당신은 할 수 있습니다
sp_help ViewName
그리고 그 컬럼의 이름이 무엇인지 확인하기 위해 COLUMN_NAME 결과 세트의 144 칼럼으로 스크롤합니다.
또한 당신은 SQL Server 관리 Studio에서 결과 창에 "헤더로 복사"를 선택하고 그대로 헤더 (열 이름)와 Excel로 결과 집합을 붙여 넣을 수 있습니다.
-
==============================
2.나는 그들의 엑셀 열 이름에 따라 모든 열 이름을주는 게 좋을 것. 첫 번째 행은 열 이름 (예 AA, BB, 등)을 동일하게 엑셀 용액이 있어야한다. 그런 다음 가져 오기를 수행 한 후 계산할 수 있어야 열 이름에 따라 선택합니다.
나는 그들의 엑셀 열 이름에 따라 모든 열 이름을주는 게 좋을 것. 첫 번째 행은 열 이름 (예 AA, BB, 등)을 동일하게 엑셀 용액이 있어야한다. 그런 다음 가져 오기를 수행 한 후 계산할 수 있어야 열 이름에 따라 선택합니다.
-
==============================
3.당신은 당신이 열 이름, 테이블 이름, n의 값을 전달하는 일반적인 저장 프로 시저에 다음을 사용할 수 있습니다. 2008 -이 MSSQL 2000에서 작동합니다.
당신은 당신이 열 이름, 테이블 이름, n의 값을 전달하는 일반적인 저장 프로 시저에 다음을 사용할 수 있습니다. 2008 -이 MSSQL 2000에서 작동합니다.
CREATE PROC usp_select_Nth ( @table_name sysname, @column_name sysname, @nth int ) AS BEGIN SET @exec = 'SELECT MAX(' + @column_name + ') from ' + @table_name + ' WHERE ' + @column_name + ' NOT IN ( SELECT TOP ' + LTRIM(STR(@nth - 1)) + ' ' + @column_name + ' FROM ' + @table_name + ' ORDER BY ' + @column_name + ' DESC )' EXEC (@exec) END
-
==============================
4.저도 같은 문제가이 코드에 의해 그것을 해결했다. 저장 프로 시저에서 이것을 사용
저도 같은 문제가이 코드에 의해 그것을 해결했다. 저장 프로 시저에서 이것을 사용
DECLARE @TableName as nVarchar(100); DECLARE @NthColumn as Int --we are fetching 1st column here. SELECT @TableName =N'YOURTABLE', @NthColumn=1 --Change if necessary DECLARE @ColumnName as varchar(100); SELECT @ColumnName = Col_name(object_id(@TableName),@NthColumn); EXEC ('SELECT ' + @ColumnName + ' FROM ' + @TableName);
-
==============================
5.아니, 당신도 표준 SQL 또는 Oracle을 사용하여 인덱스를 선택할 수 없습니다.
아니, 당신도 표준 SQL 또는 Oracle을 사용하여 인덱스를 선택할 수 없습니다.
다른 데이터베이스 벤더 그러나,이 일을 위해 자신의 고유의 명령이있을 수 있습니다.
from https://stackoverflow.com/questions/2768688/is-there-a-way-to-select-nth-column-in-a-select-clause-from-a-table-view by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] SQL 서버 2008 : INSERT하지 존재하는 경우는, 고유의 열을 유지 (0) | 2020.07.15 |
---|---|
[SQL] SQL 쉼표로 구분 컬럼 => 행에 다음 합계 합계? (0) | 2020.07.15 |
[SQL] Mysqli는 2 개의 다른 데이터베이스에서 테이블을 조인 (0) | 2020.07.15 |
[SQL] SQL 쿼리 이전 행 최적화 (0) | 2020.07.15 |
[SQL] SQLite는 오류 빈 테이블에 삽입 할 때의 '열 _id가 고유하지 않습니다' (0) | 2020.07.15 |