SQL Äõ¸® Áú¹®ÀÔ´Ï´Ù.

   Á¶È¸ 2750   Ãßõ 0    

안녕하세요.

연구에 사용하는 자료 추출을 위하여 다음과 같은 쿼리를 이용하고 있습니다(PostgreSQL).

CREATE TABLE public.patients_list AS SELECT DISTINCT person_id FROM hlud.condition_occurrence WHERE condition_source_value SIMILAR TO '(A15|A16|A17|A18|A19)%';

SELECT * FROM hlud.condition_occurrence WHERE person_id IN (SELECT person_id FROM public.patients_list);


첫번째 문의입니다)

1번째 줄에서 환자번호를 추출하여 새로운 table을 생성하고, 2번째 줄에서 이 환자목록에 해당하는 자료를 추출하는 방식입니다.

여기서 1번째 줄의 테이블 생성 없이 2번째 줄의 쿼리에 해당 내용을 넣는 방법이 없을지 문의합니다.


두번 문의입니다)

이 쿼리가 MySQL이나 Oracle에서도 동일하게 동작하는지 알고 싶습니다. 


감사합니다.

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
Å×À̺íÀ» ¸¸µé ÇÊ¿ä°¡ ¾ø¾î º¸ÀÔ´Ï´Ù.
±×³É
SELECT *
FROM hlud.condition_occurrence
WHERE condition_source_value SIMILAR TO '(A15|A16|A17|A18|A19)%';
ÀÌ·¸°Ô Á¶È¸ ÇÏ¸é µË´Ï´Ù.
±èµ¿¼öP 2019-09
SELECT * FROM hlud.condition_occurrence WHERE person_id IN (SELECT DISTINCT person_id FROM hlud.condition_occurrence WHERE condition_source_value SIMILAR TO '(A15|A16|A17|A18|A19)%');

°¡´ÉÇϸé in Äõ¸®º¸´Ù´Â join À» ÇÏ½Ã´Â°Ô ³´½À´Ï´Ù.
MySQL À̳ª Oracle¿¡¼­´Â Á¤±Ô½Ä °Ë»öÀ» ÀÌ¿ëÇÏ¸é µÉ°ÍÀ¸·Î º¸ÀÔ´Ï´Ù.
°ËÁõµÇÁö ¾Ê¾ÒÁö¸¸ ¾Æ·¡¿Í °°Àº Äõ¸® ÀÔ´Ï´Ù.

SELECT *
FROM hlud.condition_occurrence
WHERE regexp_like(condition_source_value, '^(A15|A16|A17|A18|A19)')
º¸Åë ÀӽøñÀûÀ¸·Î Å×ÀÌºí ¸¸µé¾î¼­ Á¶È¸ÇÏ´Â °æ¿ì´Â ¹Ýº¹ÀûÀÎ Á¶°ÇÁ¶È¸°¡ ÀÖ´Â °æ¿ìÀÔ´Ï´Ù. Àú µÎÁÙ·Î ³¡³ª´Â ·ÎÁ÷À̶ó¸é DAP¹ÚÀÎÈ£´Ô Àß Á¤¸®ÇØ ÁֽŴë·Î ¾²½Ã¸é µÉµí Çѵ¥, Ȥ½Ã µÞ ·ÎÁ÷ÀÌ ´õ ÀÖ´ÂÁö ²Ä²ÄÇÑ È®ÀÎÀº ÇÊ¿äÇÒ°Í °°½À´Ï´Ù.
º¯¼±ÁÖ 2019-09
¸ðµç ºÐµé²² °¨»çµå¸³´Ï´Ù.


QnA
Á¦¸ñPage 1176/5684
2014-05   4957322   Á¤ÀºÁØ1
2015-12   1493793   ¹é¸Þ°¡
2019-10   8737   Á¤ÀǼ®
2019-10   3651   Ææµà¾ó
2019-10   5383   ´Ù·ÕÀÌ
2019-10   2878   ³ªºñz
2019-10   3639   ³ªÆÄÀÌ°­½ÂÈÆ
2019-10   4833   °­Çѱ¸
2019-10   3526   ¾îÈï¾¾
2019-10   2124   PCMaster
2019-10   2630   ȣȣ
2019-10   4582   ÄĹÚ
2019-10   4608   À̶ó´Þ
2019-10   2817   juaha
2019-10   4681   ±¸Â÷´Ï
2019-10   3450   °Ç¾à
2019-10   3694   hyeonlove
2019-10   3858   ¸Þ¶Ñ±â°¡¸é¸Ç
2019-10   9919   ÀÁÁõÀÁÁõ
2019-10   2374   CPU4
2019-10   9085   VSPress
2019-10   6614   ±¸¸í¼­