-
MY-SQL - isnull프로그램/db 2013. 7. 21. 14:42
SELECT ifnull(thumbImg,'noImg')FROM `board_gallery` WHERE 1
-
union을 이용한 조인프로그램/db 2013. 7. 21. 14:41
원하는 값대로 정렬해서 join 하려면? SELECT 0 as difficulty UNION SELECT 1 UNION SELECT 2 이런식으로 가상 값을 만들어줘서 그 값들은 union 시켜서 하나의 테이블을 만들다 difficulty 이렇게 하나만 들어가 있는 경우는 유니온을 시키면 뒤에 값들도 같은 컬럼을 쓰기 때문이다. 이렇게 가상 테이블은 만들어서 left join을 해버리면 값이 없는 것은 null 처리가 된다. 예제 SELECT j_gek, j_ju, g_gek, g_ju FROM (SELECT 0 as difficulty UNION SELECT 1 UNION SELECT 2 ) tab LEFT OUTER JOIN (SELECT bank_difficulty, sum ( CASE WHEN b..
-
MS-SQL - union all 예제프로그램/db 2013. 7. 21. 14:38
select * from grpSignMain join ( select 'vac' as category, vacMainIdx as idx, vacStartDate as startDate, vacEndDate as endDate,Null as overType from grpSignVacation union all select 'dil' as category, dilMainIdx as idx, dilStartDate as startDate, dilEndDate as endDate,Null as overType from grpSignDiligence union all select 'over' as category, overMainIdx as idx, overStartDate as startDate, overE..
-
MS-SQL - for xml path 쿼리 한줄로프로그램/db 2013. 7. 21. 14:35
row로 되어있는 값들을 한줄로 가공 시켜줌. cast를 해줌으로써 xml 형식으로 내보내래는 명령을 무시하고 문자열로 묶어준다. SELECT STUFF((SELECT ',' + CAST(report_m_no AS VARCHAR) FROM report_p where report_m_subject in (721,726,735,744,749) FOR XML PATH('')), 1, 1, '') select (SELECT ',' + CAST(report_m_no AS VARCHAR) FROM report_p where report_m_subject in (721,726,735,744,749) FOR XML PATH('')) select(SELECT report_m_no FROM report_p where re..
-
MS-SQL - 통계쿼리프로그램/db 2013. 7. 21. 14:33
select t_subject_no, subject_name, sum(case when t_totalscore BETWEEN '90' AND '100' then 1 else 0 end), sum(case when t_totalscore BETWEEN '80' AND '89' then 1 else 0 end), sum(case when t_totalscore BETWEEN '70' AND '79' then 1 else 0 end), sum(case when t_totalscore BETWEEN '60' AND '69' then 1 else 0 end), sum(case when t_degree ='F' then 1 else 0 end), count(*) from (select a.*, b.subject_n..
-
DB LINK프로그램/db 2013. 7. 21. 14:32
다른 서버의 테이블과 연결하여 JOIN 시키기 EXEC 두 구문으로 다른 서버와 연결 시켜놓고 OPENQUERY 로 설정해놓은 테이블을 열어주여 조인하면 된다. EXEC sp_addlinkedserver @server='test', @srvproduct='', @provider='SQLOLEDB', @datasrc='000.000.000.000' EXEC sp_addlinkedsrvlogin @rmtsrvname = 'test', @useself = 'False', @locallogin = Null, @rmtuser = 'report', @rmtpassword = 'report' SELECT * FROM report_m m,(SELECT * FROM OPENQUERY(test, 'SELECT * FROM..