Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
2 つのテーブルで結合を実行しようとしています。1 つのテーブルには従業員情報が含まれ、もう 1 つのテーブルには学位情報が含まれます。従業員テーブルの SSN のデータ型は varchar で、ハイフンが含まれています。ただし、度表の SSN のデータ型は整数で、ハイフンは含まれません。SSN は、2 つのテーブルをリンクするために使用する必要があるものです。この設定で結合するにはどうすればよいですか?
最善の解決策は、文字列を整数に変換することだと思います:
select <whatever> from employee e join degree d on e.ssn = cast(replace(d.ssn, '-', '') as int)
キーの変換は、おそらくインデックスが使用されないことを意味することに注意してください。おそらく、どちらか一方のデータ型を一貫した形式に変更する必要があります。