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 2650 게시물 읽기
No. 2650
Re: 7.1에서 가능한 구분으로 바꾸면...
작성자
김상기
작성일
2001-04-26 05:07
조회수
4,368

SELECT user_info.name, b.src_query

FROM user_info,

(SELECT * FROM query_info

WHERE src_query LIKE '%경제%') b

WHERE user_info.reg_num = b.reg_num

 

이런 구문을 7.0.x 까지는 지원하지 않았는데,

이제 지원하더군요. 꽤나 유용하게 쓰이는 구문입니다.

 

물론 아래와 같은 경우라면, WHERE ... IN 형태의 subquery가

더 빠르게 작동할 것같군요.

 

>>정재익 님께서 쓰시길<<

 

:: 아래와 같이 사용하는 query 는 가능합니다.

:: 지금 에러가 발생한 이유는 where 절에서 (exp1) = (exp2) 이런식의 구문을 사용했을때 exp1 의 값과 e

:: xp2 의 값이 당연히 하나가 되어야만이 = (equal) 연산자가 만족됩니다. 아래 query 에서 select reg_n

:: um from query_info where src_query like '%경제%'; 라는 절의 query 결과 돌아오는 결과값이 하나가

:: 아닌 둘 이상이 돌아오기 때문에 아래와 같은 에러가 발생한 것입니다.

::

:: 만약 원하는 query 가 아래 처럼 exp2 에 둘이상의 값이 돌아오더라도 상관이 없고, user_info.reg_num

:: 이 그 중 하나만 만족해도 된다면 = 연산자 대신에 IN 이라는 연산자를 사용해 주시기 바랍니다.

::

:: SELECT user_info.name, query_info.src_query

:: FROM user_info, query_info

:: WHERE user_info.reg_num IN (SELECT reg_num FROM query_info

:: WHERE src_query LIKE '%경제%')

::

:: >>김재청 님께서 쓰시길<<

::

:: :: SELECT user_info.name, query_info.src_query

:: :: FROM user_info, query_info

:: :: WHERE user_info.reg_num = (SELECT reg_num FROM query_info

:: :: WHERE src_query LIKE '%경제%')

:: ::

:: :: 이렇게 사용하는게 가능한가요

:: ::

:: :: 먼저 query_info 테이블에서 src_query가 경제 인것의 reg_num을 찾아서 그 reg_num을 가지고 다시

:: joi

:: :: n한 테이블에서 user_info.name 과 query_info.src_query 를 출력할려고 합니다 그런데 잘안되는구

:: 요 E

:: :: RROR 가 나는데 메시지는 이렇게 뜹니다

:: ::

:: :: ERROR: More than one tuple returned by a subselect used as an expression.

:: ::

:: :: 에러의 의미는 알겠는데 이query를 그럼 어떻게 써야 할까요....

:: :: 알려주시면 너무 감사하겠습니다

[Top]
No.
제목
작성자
작성일
조회
2644안녕하세요
silver
2001-04-25
3914
2645┕>Re: 안녕하세요
정재익
2001-04-25 18:50:12
3735
2640윈도우용 pgsql의 초기 user는 무엇인지요?
서종근
2001-04-25
4508
2641┕>Re: 윈도우용 pgsql의 초기 user는 무엇인지요?
김일형
2001-04-25 10:22:28
4473
2642 ┕>Re: Re: 윈도우용 pgsql의 초기 user는 무엇인지요?
서종근
2001-04-25 10:30:03
4037
2647  ┕>Re: Cygwin이요? ......
김일형
2001-04-25 23:29:29
4555
2643 ┕>Re: Re: 바로 그것이 안되더군여~ 그래서 꽁수로 이렇게 했습니다. :-)
김진곤
2001-04-25 10:34:24
4336
2646  ┕>Re: PostgreSQL에서 유저를 생성하는 것은요...
김일형
2001-04-25 22:40:27
5527
2635Linux상의 PostgresSQL에 WinCE로의 접근... ㅠ.ㅠ
이태웅
2001-04-24
4724
2648┕>Re: Linux상의 PostgresSQL에 WinCE로의 접근... ㅠ.ㅠ
정재익
2001-04-26 02:57:08
4373
2634조인&amp;서브쿼리 잘모르겠군요 알려주세요
김재청
2001-04-24
4263
2636┕>Re: 조인&amp;서브쿼리 잘모르겠군요 알려주세요
정재익
2001-04-24 18:36:24
4659
2650 ┕>Re: 7.1에서 가능한 구분으로 바꾸면...
김상기
2001-04-26 05:07:44
4368
2658  ┕>Re: Re: 7.1에서 가능한 구분으로 바꾸면...
정재익
2001-04-30 00:36:11
4398
2628다들 아시겠지만 outer join 입니다.
이승현
2001-04-23
4599
2633┕>Re: 다들 아시겠지만 outer join 입니다.
fith
2001-04-24 13:57:37
4791
2637 ┕>Re: Re: 다들 아시겠지만 outer join 입니다.
정재익
2001-04-25 02:09:48
5885
2638  ┕>Re: Re: Re: 다들 아시겠지만 outer join 입니다.
fith
2001-04-25 02:38:09
4572
2649  ┕>Re: 7.1 에서 지원합니다.
김상기
2001-04-26 05:01:39
4573
2653   ┕>Re: Re: 7.1 에서 지원합니다.
정재익
2001-04-26 19:40:31
4891
2625ipc-daemon 에러
이승룡
2001-04-22
3804
2626┕>Re: ipc-daemon 에러
김일형
2001-04-23 03:20:25
3956
2632 ┕>Re: Re: ipc-daemon 에러
이승룡
2001-04-23 19:43:46
4204
2639  ┕>Re: 접속가능합니당...
김일형
2001-04-25 05:13:55
4472
2624PostgreSQL 7.1 에서 로그를 Syslog 로 보내었더니...
정재익
2001-04-22
4120
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.022초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다