で式を繰り返さないための方法私は、次のSQLを持っている:SQL Serverの文字列操作クエリ
SUBSTRING(Location,
CHARINDEX(' : ', Location) + 3,
CHARINDEX(' ms - ', Location) - (CHARINDEX(' : ', Location) + 3))
(場所はこのようなものが考えられます。1dasev : 232 ms - 323-asv3R
とsubstring
は232
を返します)
の場合私はこれをC#で書きましたが、CHARINDEX(' : ', Location) + 3
を2回再計算しません。私はそれを変数に格納し、それを再利用します。
私はすべて同じようなことをするためにSQLにクールなトリックがありますか?(私のクエリは、上記の単純な例よりも複雑になり、私はそれを読みやすくするために期待しています。)
は一貫した文字列形式ですか? –
あなたは、サブクエリやそれ以外の一般的なテーブル式を導入しなければならないので、一般的には式を繰り返すことによって行われます。 – Matt