内の特定の文字の特定の出現の前と後の文字列を抽出したい:私はこのようなデータを持っている列を持つSQL
/hey[my]/file/exec[jhwwdfbfjuneinfcvdkvnkdvn]
私だけフェッチするSQLクエリを作成したいです」この列から「ファイル」を選択します。 '/'文字の3番目の出現の後、 '/'の2番目の出現の前に文字列をトリミングしたいと思います。ファイルの文字列は動的です。すべてのレコードでファイル名が異なるので、好きなものは使用できません。
SELECT SUBSTRING(col, LEN(LEFT(col, CHARINDEX ('/', col))) + 1, LEN(col) - LEN(LEFT(col, CHARINDEX ('/', col))) - LEN(RIGHT(col, LEN(col) - CHARINDEX ('/', col))) - 1);
結果 - s.valueのLINE 1: SELECT SUBSTRING(s.value, LEN(LEFT(s.value, charindex ('/', ... ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts.
データ型がテキストです。 私はこのクエリをpostgresqlデータベースに適用します。
私はSQLクエリで発生を与える方法がわかりません。
質問に該当しないタグは使用しないでください。実際に使用しているデータベースが不明なため、データベースタグを削除しました。実際に使用しているデータベースのみ*のタグを追加してください –
良い!あなたがそれをするときに、何か問題に直面したら、戻って来て、お気軽にお問い合わせください! –
私たちにdbスキーマ、サンプルデータ、現在および予想される出力を表示します。 \t [** How-to-Ask **](http://stackoverflow.com/help/how-to-ask) \t \t [**スタート**] (http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/)質問品質を改善し、より良い回答を得る方法を学ぶことができます。 –