0

したがって、SQL Sever 2008 R2 には 2 つのテーブルがあります。

 Table A:

 patient_id   first_name   last_name   external_id
 000001       John         Smith       4753-23314.0
 000002       Mike         Davis       4753-12548.0

 Table B:

 guarantor_id   visit_date   first_name   last_name
 23314          01/01/2013   John         Smith
 12548          02/02/2013   Mike         Davis

テーブル B のguarantor_id が、テーブル A の external_id の中間セクションと一致することに注意してください。これらのテーブルに参加できるように、external_id の前から 4753- を取り除き、後ろから .0 を取り除くのを誰か手伝ってくれませんか?

ヘルプ/例は大歓迎です。

4

5 に答える 5

0

@woz が言ったように、SUBSTRING を使用できます。長さが固定されていない場合は、CHARINDEX 関数を使用して、ドットとダッシュの位置を決定し、より柔軟にすることができます。

別の注意として、関数に基づいて結合すると、パフォーマンスが大幅に低下します。関数の結果でフィールドを更新するか、削除された値を持つ新しい列 STRIPPED_GUARANTOR_ID を作成してから、その列に結合することをお勧めします

于 2013-11-08T16:41:31.907 に答える