0
A
答えて
0
テーブル値-機能とクロスが適用
例
Declare @YourTable table (Address1 varchar(25),Address2 varchar(25))
Insert Into @YourTable values
('123 Foo St','12 Foo'),
('123 Foo St','Bar Street'),
('123 Foo St','321 Foo St'),
('123 Foo St','Bar Lane')
Select A.*
,B.*
From @YourTable A
Cross Apply (
Select Cnt = count(*)
From (Select Distinct RetSeq,RetVal From [dbo].[udf-Str-Parse-Char](replace(A.Address1,' ',''))) C1
Join (Select Distinct RetVal From [dbo].[udf-Str-Parse-Char](replace(A.Address2,' ',''))) C2
on C1.RetVal=C2.RetVal
) B
戻り
Address1 Address2 Cnt
123 Foo St 12 Foo 5
123 Foo St Bar Street 2
123 Foo St 321 Foo St 8
123 Foo St Bar Lane 0
だけで確認することが
CREATE FUNCTION [dbo].[udf-Str-Parse-Char] (@String varchar(max))
Returns Table
As
Return (
with cte1(N) As (Select 1 From (Values(1),(1),(1),(1),(1),(1),(1),(1),(1),(1)) N(N)),
cte2(N) As (Select Top (IsNull(DataLength(@String),0)) Row_Number() over (Order By (Select NULL)) From cte1 a,cte1 b,cte1 c,cte1 d,cte1 e,cte1 f)
Select RetSeq=N
,RetVal=Substring(@String,N,1)
From cte2
)
--Max 1 Million Observations
--Select * from [dbo].[udf-Str-Parse-Char]('this is a string')
+0
ありがとうございます。私はthis.Iで働くことができます私は投票しましたが、新しい参加者としてそれは公に登録しませんでした。再度、感謝します。 –
+0
@ M.Butterハッピーは助けました。乾杯:) –
関連する問題
- 1. 戻り値配列の比較の一致率
- 2. 戻り値比較器のdoubleを使用した比較メソッド?
- 3. simple_tagの戻り値と比較
- 4. jQuery 1つの配列のキーを別の配列の値と比較して一致する戻り値
- 5. 完全一致と部分一致の2つのマップの値の比較
- 6. 最後の一致の戻り値
- 7. tsqlプロシージャ戻り値asp.net
- 8. 配列と戻り値の一致
- 9. 一致と不一致のHashMapsの比較
- 10. Excel VBA-一致する列の比較
- 11. PHPデータ型の不一致比較
- 12. Excel coloumnの比較と一致
- 13. オブジェクトの比較と一致した値の検索
- 14. .filterを使用して2つの配列を比較し、一致しない戻り値を返します。
- 15. 値が一致するとrandom_bytesの比較が失敗する
- 16. 2つのデータフレームを比較し、一致した値に
- 17. TSQLラウンド()不一致?
- 18. 2つの戻り値を比較します
- 19. セルのエントリと戻り値を比較するSAS
- 20. C#2つのリストと戻り値を比較する
- 21. 2つの値と比較した場合の値の戻り値
- 22. Pythonは一致するキーと値、キーを比較します
- 23. 一致と不一致を識別するための行の比較
- 24. 1つの値と結果を返す値のバージョンを比較するtsql
- 25. TSQL - テーブルを比較します。
- 26. 一般的な値の比較
- 27. 2つの連想配列の一致した値の比較とカウント - PHP
- 28. データフレーム/マトリックス間の類似の値を比較/一致させるR
- 29. Pythonで2つのリストを比較し、一致した値のインデックスを返す
- 30. OCamlオプションの戻り値とオプションの一致
興味があればUDFは:スペースは文字としてカウントされません、123はFooセント/ 321 Fooooセントはわずか8、ない10で、同様に123 Fooooセント/ 321 Fooのセントは8です、ない10? –
それは正しいスペースは文字としてカウントされません。 –
https://www.simple-talk.com/blogs/string-comparisons-in-sql-the-longest-common-substring/?注:これは計算するのに比較的高価なものです –