- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SQL 文字列検索につきまして)
SQL文字列検索について
このQ&Aのポイント
- SQL文字列検索において、指定の文字「-」を検索し、先頭から「-」のひとつ前までを取得する方法について質問します。substrやinstrでは実現できないようです。
- 「-」を含む文字列の場合は、その前までを取得し、含まない文字列の場合はそのまま出力する方法を教えてください。
- 具体的な実行結果として、例えば「01234567-001」「0123456-001」「012345-001」「0123456789-001」の場合、期待する結果はそれぞれ「01234567」「0123456」「012345」「0123456789」です。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
select case when instr(col, '-') > 0 then substr(col, 1, instr(col, '-') - 1) else col end from tbl; ですかね。
その他の回答 (1)
- yamada_g
- ベストアンサー率68% (258/374)
回答No.2
>【過去の質問】 http://okwave.jp/qa/q8546719.html こちらですよね?追加で回答していたのですが、ご覧になっていないのでしょうか? No.1さんと同様の回答ではありますが。
質問者
お礼
お返事が遅くなりまして、大変申し訳ございません。 また、同一内容の質問を別個であげてしまい、失礼いたしました。 2つ目の質問を補足に記載してしまったため、不安になり別個に質問をあげてしまいました。 いただいた内容で意図通りに動作いたしました。 非常に助かりました。ありがとうございました。
お礼
お返事が遅くなりまして、大変申し訳ございません。 意図通りに動作致しました。ありがとうございます!