私は文字列から数字以外の文字を削除する方法を、非常に役立つ記事を見つける: https://stackoverflow.com/a/18635337/6216435理解クエリ数字以外の文字を削除する
しかし、いくつかの質問には、うまくいけば、誰かが少し説明することができ、生じました。
select top (100) N=row_number() over (order by @@spid) from sys.all_columns)
結果番号1-100が、なぜ@@ SPIDとsys.all_columnsを与える:
1)なぜ、これが使用するには?それを行う良い方法はありますか?
2)..where N<=datalength(DirtyCol)) [1] where C between '0' and '9'
- ここでは[1]は何を表していますか?
答えがorder by (select
に似た一定の値として@@spid
を使用していることをあなたの助け:)
sys.all_columnsそれは次のように使用され、メタデータを含むシステムテーブルですあなたの2番目の質問[1]はそのサブクエリのエイリアスであり、[RandomName]であったかもしれません - 暗黙的に 'as'が、SomeName'(サブクエリ)として暗黙的に' – Mihai
'['と ']'はsqlの名前のまわりで使用されますerver - 何らかの理由でこの男がこのテーブルの名前を "1"にしたかったのですが、大部分はコードを読みにくくしたと思います。私は '[1]'の代わりに 'tmp'を使っていました。数字でなければ大括弧とtmpは必要ありません。 – Hogan
これらの質問をその回答にコメントとして投稿する方がはるかに意味があります。 – Hogan