database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 8985 게시물 읽기
No. 8985
검색 값을 필드명으로 쿼리 할 수 있나요?
작성자
iyob
작성일
2012-05-02 20:19
조회수
9,868

안녕하세요?

오랜만에 안 풀리는 문제가 있어 문의 드립니다.

함수 구현에서 a = 'm3' 일 경우

a의 값이 다른 테이블의 칼럼명이 될 경우 쿼리가 가능하게 하는 방법이 있나요?

select (select 'm3') from t1;

--t1 테이블에 m3란 칼럼의 값을 구하고 싶은데요.

어떤 함수나 칼럼으로 인식시킬 방법이 없을까요?

이 글에 대한 댓글이 총 4건 있습니다.

일반 쿼리로는 불가능 하고요, 내장 프로시저 언어를 이용한 동적 쿼리를 사용하는 함수를 하나 만들어야 할 것 같네요.

김상기(ioseph)님이 2012-05-02 21:25에 작성한 댓글입니다.

답변 감사합니다.

plpgsql 내장프로시저언어로 작업중이나 값을 열이름으로 인식시키는게 잘 안돼서 그럽니다.

그냥 문자열로 인식을 합니다.

열이름으로 강제 처리할 방법이 없을까요?

iyob님이 2012-05-02 22:05에 작성한 댓글입니다.
이 댓글은 2012-05-02 22:06에 마지막으로 수정되었습니다. Edit

 execute 'select ' || 변수명 || ' from table'

이런식이 되겠죠. 이것을 동적 쿼리라고 합니다. 

http://postgresql.kr/docs/9.1/plpgsql-statements.html#PLPGSQL-STATEMENTS-EXECUTING-DYN

김상기(ioseph)님이 2012-05-03 12:44에 작성한 댓글입니다.

말씀하신 문서를 참조해서 실습을 해보니 되네요.

또, 한가지 배웠습니다. 정말 감사합니다. 복 받으실 겁니다. ^^

iyob님이 2012-05-03 17:21에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
8988pqxx 사용시 매번 쿼리 실행하지 않고 다른 방법도 있나요? [2]
2012-05-10
8690
8987Greenplum(postgres)에서 upsert가 가능한가요 ? [2]
배진홍
2012-05-10
8680
8986스키마명 변경하려고 하는데 어떻게 해야 할까요?? [1]
김종수
2012-05-04
9018
8985검색 값을 필드명으로 쿼리 할 수 있나요? [4]
iyob
2012-05-02
9868
8984share/contrib 가 없는데 추가설치 가능한가요? [5]
김현진
2012-05-02
9144
8981Cygwin PostgreSQL 7.4 (Windows 98SE)(Windows98SE)(Win 98SE)(Win98SE)(윈도우98SE)(윈도98SE)
포스트그레에스큐엘
2012-04-28
8471
8980[참고] MS윈도용 네이티브 바이너리는 공식적으로 PostgreSQL 버전8.0부터 릴리즈되었습니다. [참고]
포스트그레에스큐엘
2012-04-28
10853
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2023 DSN, All rights reserved.
작업시간: 0.051초, 이곳 서비스는
	PostgreSQL v16.1로 자료를 관리합니다