0
私はIF
の条件を使用しています。SQLサーバの選択条件ケース
ですから、CASE
を使用して、スクリプトを短縮したいと考えています。代わりにIF
のCASE
WHEN
を使用するようにザ・スクリプト以下の変更方法
:
DECLARE @SDATE1 DATE='2015-01-01'
DECLARE @EDATE1 DATE='2016-01-01'
DECLARE @ASOF VARCHAR(10)='YES'
IF @ASOF='YES'
select * from customer
ELSE
select * from customer WHERE
CAST(CUSTDATE AS DATE)END
BETWEEN @SDATE1 AND @EDATE1
んが、より複雑な条件を書きません - ちょうどなし。まず、コーディング作業を最小限にしようとするのはちょうど怠惰です。これは、アスタリスクを列リストとして使用することによって証明されます。選択したアプローチはパフォーマンスの問題につながる可能性があります。また、where句の日付に列をキャストすることで、パフォーマンス上の問題が発生する可能性があります。日付で検索する方法はこちら[こちら](http://sqlblog.com/blogs/aaron_bertrand/archive/2011/10/19/what-do-between-and-the-devil-have-in-common.aspx) – SMor