SQLの整形

SQLの整形

 SQLエディタではメニューの[SQL(S)]-[SQL の整形(Q)]を選択するか、キーボードからCtrl+Q を押すことで入力中のSQLを整形することができます。

 オプション画面から、大文字/小文字変換、カンマや and orの位置、インデントの制御などを指定することができます。

整形前サンプル
--1行コメント
select distinct a . *  -- 1行コメント
,func1(a . aaa+1*2*3/4),"a"."aaa"||'aaa'+1,func2(func3
( 123 )),( 1+( 2*3 ) ),@@SQLSERVER_ENV as"aaa",case a  . bbb when '1' then 
'一' when '2' then '二' else '' end ,   case when a. fff = 'ccc' then 'O' else 
'X' end,case a  .fff when '1' then case when a. ggg = 'ccc' then 'O' else 'X' 
end when '2' then (case when a. hhh = 'ccc' then 'O' else 'X' end) else '' end
from TB_NAME a inner join (select カラム1,カラム2,カラム3 from テーブル名 where
カラム1   != カラム2) テ on a.aaa=テ.カラム1 where a . aaa=@aaa and テ . カラム2 = 
:bbb and a.ccc >= 3 and    a.ddd <= 4 and a.eee != 5 and `a` . `MySQL Identifier  `=333 
and [a] . [SQLServer Identifier  ]=2.2 and(1=1 or (2=2)) union select * from (select * 
from TB_NAME4)


整形後サンプル
--1行コメント
select distinct
   a.*                                            -- 1行コメント
  , func1(a.aaa + 1 * 2 * 3 / 4)
  , "a"."aaa" || 'aaa' + 1
  , func2(func3(123))
  , (1 + (2 * 3))
  , @@SQLSERVER_ENV as "aaa"
  , case a.bbb 
    when '1' then '一' 
    when '2' then '二' 
    else '' 
    end
  , case 
    when a.fff = 'ccc' 
    then 'O' 
    else 'X' 
    end
  , case a.fff 
    when '1' then case 
      when a.ggg = 'ccc' 
      then 'O' 
      else 'X' 
      end 
    when '2' then (case when a.hhh = 'ccc' then 'O' else 'X' end) 
    else '' 
    end 
from
  TB_NAME a 
  inner join ( 
    select
      カラム1
      , カラム2
      , カラム3 
    from
      テーブル名 
    where
      カラム1 != カラム2
  ) テ 
    on a.aaa = テ.カラム1 
where
  a.aaa = @aaa 
  and テ.カラム2 = :bbb 
  and a.ccc >= 3 
  and a.ddd <= 4 
  and a.eee != 5 
  and `a`.`MySQL Identifier ` = 333 
  and [a].[SQLServer Identifier  ] = 2.2 
  and (1 = 1 or (2 = 2)) 
union 
select
  * 
from
  (select * from TB_NAME4)










[an error occurred while processing this directive]