2009-11-12 1 views
3

나는 '선택'쿼리에서 몇 가지를 생략하고 싶은 많은 열이있는 테이블을 가지고 있습니다. select (* - columns_to_be_omitted) from myTable과 같은 것입니다. 쿼리의 다른 모든 열을 나열하는 것 외에 다른 방법이 있습니까?SELECT (* - some_columns) SQL의 FROM TABLE

이것은 일회성 수동 쿼리이므로 성능에 대해서는 신경 쓰지 않습니다. 사용 편의성은 여기에서 더 큰 필요성입니다.

+0

당신의 DBMS와 툴셋 이름. – Spence

답변

2

당신은 할 수 없어 - 당신이 할 수있는 최선은 SQL Server Management Studio를 사용하는 경우 SQL Prompt 같은 도구를 사용하는 것입니다.

SELECT * FROM MyTable을 수행 할 수 있고 "*"다음에 커서를 놓으면 SQL Prompt가 테이블의 모든 열을 열거하여 테이블의 모든 열 목록을 제공합니다 그런 다음 원하지 않는 항목을 제거 할 수 있습니다. 또는 SELECT 문에 삽입 할 테이블의 열 수를 선택할 수있는 팝업 대화 상자를 열 수 있습니다.

너무 나쁜 그 상자 밖으로 SSMS의 일부가 아니다 :-(

마크

4

직접 SQL에서는이 작업을 수행 할 수 없습니다. 가장 좋은 방법은 동적 SQL 문을 생성하고 실행하는 저장 프로 시저 (익명 또는 기타)를 작성하는 것입니다.

일부만 포함하거나 포함 할 수 있지만 일부만 제외하거나 제외 할 수 있습니다 (다른 데이터베이스에있을 수있는 이상한 공급 업체 확장 제외). MySQL에는 그런 것이 없습니다.

1

나는 현재 M $가 인텔리 센스가없는 IDE와 관리 스튜디오를 출하 할 수있는 방법을 이해할 수 없다. 나는 2008 년이 2005 년에 수정되었다는 것을 수정했다.

SQL Management Studio를 사용하는 경우 삭제할 수있는 템플릿 선택 문을 제공하는 새 쿼리 창으로 스크립트 선택을 사용할 수 있습니다. 테이블을 마우스 오른쪽 버튼으로 클릭하면됩니다.

행운을 빕니다 :)

+1

서버 08의 관리 스튜디오에 인텔리 센스가 있습니다. – RC1140

+0

쿨 5 가지 버전을 사용했습니다. – Spence

+0

나는 당신의 대답에 최대 득표를했을 것이지만, 당신의 대답의 첫 부분이 그 질문과 아무 관련이 없기 때문에 나는 투표 할 수 없습니다. –

0

할 수있는 직접적인 방법이 없습니다. 당신은 당신이 할 수있는 다른 선택 쿼리에서 원하는 invididual 열을 언급 할 수

+0

왜 임시 테이블 대신보기를 사용하지 않습니까? (임시 테이블에 모든 데이터를 추가하는 번거 로움은 그다지 많지 않습니다 ...) – Thorsten

0

데이터 딕셔너리에 대한 쿼리를 사용하여 열 목록을 동적으로 구성 할 수 있습니다. 그런 다음 원하지 않는 열 목록을 where- 절 (컬럼 이름이 아닌)(). (당신이 어떻게 저장된 proc appr olet the cletus suggest.)