OracleとMSSQLServerの両方のSQLステートメントの記述に問題があります。両方で機能するようにSQLを記述したいと思います。データベース型変数の設定と切り替えをいじる必要はありません
次のような値を持つコース名の列があります。
9RA923.2008W
2007年12月23日10
P0033330.200901
「。」の右側をすべて選択したい。
オラクルではこれを使用しています:
SELECT substr(bom_course_id, instr(bom_course_id, '.')+1) FROM ...
MSSQL Serverでは、これを使用できます。
SELECT SUBSTRING(bom_course_id, CHARINDEX('.', bom_course_id)+1 ) FROM ...
OracleまたはMSSQLのいずれかで同じSQLステートメントを使用して、ドットの後の最後の文字を選択できる賢い方法はありますか。
残念ながら、「。」の前後に何文字あるかわかりません。完全に数字でもないので、数字だけでは数えられません。
SQL標準があったらいいのにと思います。