데이터베이스 개발자 질문과 답변 게시판

데이터베이스 개발/운영 관련 질문과 답변을 올리는 게시판입니다. 궁금하신 내용을 이곳에서 문의하시면 SQLER 분들의 답변을 받으실 수 있습니다. 문의를 하실때에는 최근 작업하신 특이 사항이나, 장애 발생 전 상황을 상세히 올려 주시면 답글을 적어주시는 SQLER분들의 답변이 더 정확할 수 있으니 도움 되시길 바랍니다. 쿼리 문의일 경우, 실제 문제가 재현되는 테이블생성, 샘플데이터 생성 쿼리를 함께 올려 주시면 더 빠르고 정확한 쿼리 문의 응답이 가능합니다.

현재 상황.

SELECT column1 FROM tableName

이렇게 하나테이블의 특정컬럼을 셀렉트하면

column

data1

data2

data3

...

이런식으로 나오는데요.

저 하나하나의 데이터값들이 DB명들입니다.


그래서 저 각각의 DB에 접근을해서 특정 테이블을 셀렉트를해서 가져와야하는데요.


DECLARE @db_name varchar(10)

set @db_name = 'test

SELECT   RegisterDate
                ,CompanyId
                ,CompanyName
               ,(CASE WHEN MemberStatus = 'TEM' THEN '데모'
                            WHEN MemberStatus = 'PRO' THEN '신청'
                            WHEN MemberStatus = 'T'   THEN '회원'
                   END) AS MemberStatus
             
               ,(SELECT COUNT(*) FROM test.dbo.sysuser) AS UserCount
  
               ,(SELECT CAST( ((SUM(Size)* 8) / 1024.0) AS DECIMAL(18,1))
                      FROM sys.master_files
                  WHERE name LIKE (SELECT CompanyId FROM BASIC.[dbo].SYSMEMBER WHERE CompanyId = T1.CompanyId)+'%') AS db_size 

                  ,CASE WHEN T1.CompanyId = @db_name
                   THEN (SELECT CONVERT(float, str(sum(reserved) * 8.192 / 1024. , 15 , 4)) AS table_size
                    FROM test.dbo.sysobjects o
                   INNER JOIN test.dbo.sysindexes i ON (i.id = o.id)
                   WHERE i.indid IN(0,1,255) AND o.xtype = 'U'
                   AND o.name ='JOURNALENTRY'
                   GROUP BY i.id)
                   END AS 'JOURNALENTRY_SIZE'
    
                 ,CASE WHEN T1.CompanyId = @db_name
                   THEN (SELECT CONVERT(float, str(sum(reserved) * 8.192 / 1024. , 15 , 4)) AS table_size
                    FROM test.dbo.sysobjects o
                    INNER JOIN test.dbo.sysindexes i ON (i.id = o.id)
                    WHERE i.indid IN(0,1,255) AND o.xtype = 'U'
                    AND o.name ='BUDGETEXPENSEDETAIL'
                    GROUP BY i.id)
                    END AS 'BUDGETEXPENSEDETAIL_SIZE'


FROM BASIC.dbo.SYSMEMBER T1
WHERE T1.CompanyId = @db_name


이런 쿼리인데요.

쿼리를 실행하는건 BASIC이란 DB에서 실행을 하고있구요.

test.dbo.sysobjects o 이구문에서 test를 @db_name으로 해야하는데, 저렇게하면 안된다고 나오더라구요.

그래서 USE @db_name을 써도 이것도 안된다고하는데요ㅜㅜ

셀렉트한 db명들을 가지고 변수에 담아서 하나하나 해당 DB에 접근해서 저 쿼리를 작동시키는 방법이 있을까요?ㅠㅠ

제발 도와주세요ㅠㅠ....


감사합니다.

No. Subject Author Date Views
8858 날짜로 몇일이 지났는지 계산 가능할까요? [3] 변닷컴 2015.07.28 4638
8857 안녕하세요. 최신 패치 정보는 어디서 확인하는지 궁금합니다. [2] SQLerBeginner 2015.07.27 3545
8856 대량 데이터 유입시 실행계획 관련 질문드립니다. [3] 나는짱이야 2015.07.27 3228
8855 sql exprssion 연결문자열 [1] 민성 2015.07.27 2690
8854 MS-Word 형식 문자열은 DB 저장시 어떻게 변환되는 건가요??? [1] 잉구리앵 2015.07.27 2665
» SELECT 쿼리 질문드려요.부탁드립니다. [3] ngbrother 2015.07.24 3241
8852 중첩 Query를 view 로 사용하고 하는데..어찌 하는지요? [1] 슈토파이터 2015.07.23 3351
8851 웹(jsp)에서 원격으로 mssql서버(윈도우인증모드)에 접속하려면... [1] 깔샴이 2015.07.23 4892
8850 주문금액합계 구하는 방법.. [1] 팔개 2015.07.23 3361
8849 ASCII를 언제 사용하는걸까요 ㅜ [2] 마힐링 2015.07.23 2868
8848 linux 에서 mssql 2008 데이터를 쿼리할때 결과건수가 정렬에 따라 달라집니다. ㅠㅠ [1] 은여우 2015.07.22 3165
8847 두 테이블의 값을 비교 한 후 빈 값이 있으면 로우에 값을 채우는 쿼리 질문입니다. [5] 전용진 2015.07.22 5732
8846 두 테이블의 데이터를 연속 출력 [2] park87 2015.07.21 2769
8845 full outer join 으로 가져온 값에서 null 인 값을 체크를 해서 아닌 것을 값으로.. [1] taz2315 2015.07.21 3213
8844 데이터베이스 이관하려고 합니다. [1] 듀퐁 2015.07.20 3366
8843 상품 배송 분배 로직을 짤려고 하는데요 조언좀 부탁드립니다 [1] yhjeon 2015.07.17 4297
8842 select 데이터 가져오는법 [1] 호야로아아 2015.07.17 3265
8841 select 할 때 count 에만 where 절을 쓸 수 있나요? [3] kys96811 2015.07.17 3522
8840 Select 쿼리 질문드립니다. [1] 안양거북이 2015.07.16 2619
8839 특정칼럼의 데이터 '세로'- > '가로' 변환 [2] 라꾸라꾸 2015.07.16 3272





XE Login