SQL Server 2008 を使用しています。
私のテーブルは次のとおりです。
位置
------------------------
Id | LocationName
------------------------
1 | Bodakdev
2 | Thaltej Road
3 | Andheri East
4 | Noida Sector 2
会社
--------------------------------------------------------------------------
CId | Address | LocationId
--------------------------------------------------------------------------
11 | 301, GNFC Infotower, Bodakdev, | NULL
12 | 307/308,Arundeep Complex | NULL
13 | 7 Krishana Dyeing Compund, Nagardas rd., Andheri | NULL
14 | B-23 ,Ground Floor,Sector 2 | NULL
--------------------------------------------------------------------------
現在LocationId、Companyテーブルには null があります。場所の名前が含まれている場合Addressは、更新しLocationIdます。
たとえば、CID の住所 - 11 にはBodakdevLocationId 1 が含まれ、2 番目の例では、CID の住所 - 13 にはAndheri単語が含まれ、LocationId 3 が更新されます。
必要な出力:
CId | Address | LocationId
--------------------------------------------------------------------------
11 | 301, GNFC Infotower, Bodakdev, | 1
12 | 307/308,Arundeep Complex | NULL
13 | 7 Krishana Dyeing Compund, Nagardas rd., Andheri | 3
14 | B-23 ,Ground Floor,Sector 2 | 4
--------------------------------------------------------------------------
以下のクエリを使用してみました
SELECT
(LEN(Address) - LEN(REPLACE(Address, LocationName, '')) ) / LEN(LocationName)
ロケーション名が含まれている場合Addressは、出現回数を返します。それ以外の場合は 0 を返します。
しかし、正しい出力は得られません。これどうやってするの?ありがとう。任意の提案をいただければ幸いです。