SQL で英数字文字列から数値を抽出するにはどうすればよいですか?
SQL の英数字文字列から数値を抽出します
質問:
英数字を含む文字列がいくつかあり、数値のみを抽出する必要があります。たとえば、次の文字列があるとします:
- 003一次試験計画
- コーディネート005
- 残高1000シート
検索したい内容:
- 003
- 005
- 1000
解決策:
SQL を使用して文字列から数値を抽出するには、ユーザー定義関数 (UDF) を使用できます。次の UDF を作成します:
CREATE FUNCTION dbo.udf_GetNumeric ( @strAlphaNumeric VARCHAR(256) ) RETURNS VARCHAR(256) AS BEGIN DECLARE @intAlpha INT SET @intAlpha = PATINDEX('%[^0-9]%', @strAlphaNumeric) BEGIN WHILE @intAlpha > 0 BEGIN SET @strAlphaNumeric = STUFF(@strAlphaNumeric, @intAlpha, 1, '' ) SET @intAlpha = PATINDEX('%[^0-9]%', @strAlphaNumeric ) END END RETURN ISNULL(TRIM(@strAlphaNumeric), '0') END GO
使用法:
UDF を作成したら、それを使用して文字列から数値を抽出できます。
SELECT dbo.udf_GetNumeric(column_name) FROM table_name
例:
SELECT dbo.udf_GetNumeric('003Preliminary Examination Plan')
参照:
注:
このソリューションは数値を文字列として出力します。整数が必要な場合は、CAST() 関数を使用して整数を変換できます。 上記のコードは、不必要な複雑なロジックを回避し、関数が常に値を返すように簡略化されています。
以上がSQL で英数字文字列から数値を抽出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undress AI Tool
脱衣画像を無料で

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Stock Market GPT
AIを活用した投資調査により賢明な意思決定を実現

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

coalesse()returnSthefirstnon-nullvalueFromalistofexpressions、gracefulful fulful handlingingdatabysubysubtututingdefaults、mergingcolumnvalues、suppeatsoptitionalfields、およびProviding backsinjoinsandaggations、およびProviding foviding backsinginging gregionsulを保証します

既存のテーブルにプライマリキーを追加するには、AddPrimaryKey句を使用してAlterTableステートメントを使用してください。 1.ターゲット列にヌル値も重複もなく、notnullと定義されていることを確認してください。 2.単一列のプライマリキー構文は、変更可能なテーブル名AddPrimaryKey(列名)です。 3.マルチカラムの組み合わせプライマリキー構文は、変更可能なテーブル名AddPrimaryKeyです(列1、列2)。 4.列がnullを許可する場合、最初に変更を実行してnotnullを設定する必要があります。 5.各テーブルには1つの主キーのみがあり、追加する前に古いプライマリキーを削除する必要があります。 6.自分で増やす必要がある場合は、Modifyを使用してAuto_incrementを設定できます。操作前にデータを確認してください

Group_concat()関数のセパレーターキーワードを使用して、セパレーターをカスタマイズできます。 1.セパレーターを使用して、セパレーターなどのカスタムセパレーターを指定します。 'セパレーターは、セミコロンとプラススペースに変更できます。 2.一般的な例には、パイプ文字 '|'、スペース ''、ラインブレイク文字 '\ n'、またはカスタム文字列 ' - >'をセパレーターとして使用することが含まれます。 3.セパレーターは文字列リテラルまたは式である必要があり、結果の長さはgroup_concat_max_len変数によって制限されていることに注意してください。 4。セパレーターはオプションです

MySQLDUMPを使用することは、MySQLデータベースをバックアップする最も一般的で効果的な方法です。テーブル構造とデータを含むSQLスクリプトを生成できます。 1.基本的な構文は、mysqldump-u [ユーザー名] -p [データベース名]> backup_file.sqlです。実行後、パスワードを入力してバックアップファイルを生成します。 2。-DATABASESオプションを使用して複数のデータベースをバックアップします:mysqldump-uroot-p--databasedb1db2> multive_dbs_backup.sql。 3.すべてのデータベースをバックアップしてください-all-database:mysqldump-uroot-p

UnionRemovesDulisionallkeepsallowsincludingDuplicates;

テーブルは、ロックテーブルを使用して手動でロックできます。読み取りロックにより、複数のセッションが読み取ることができますが、書き込むことはできません。 Write Lockは、現在のセッションの排他的な読み取りおよび書き込み許可を提供し、他のセッションは読み書きできません。 2。ロックは現在の接続のみです。 StartTransactionおよびその他のコマンドの実行は、暗黙的にロックをリリースします。ロック後、ロックされたテーブルのみにアクセスできます。 3. Myisamテーブルのメンテナンスやデータバックアップなどの特定のシナリオでのみ使用します。 INNODBは、パフォーマンスの問題を回避するための... forupdateなどのトランザクションおよび行レベルのロックを使用することを優先する必要があります。 4。操作が完了した後、ロックテーブルを明示的にリリースする必要があります。そうしないと、リソースの閉塞が発生する可能性があります。

ifnull()inmysqlreturnsthefirstexpressioni itisnotnull、その他wisereturnSteSecondexpression、makingidealforreplacingnullvalueswithdefaults;

MySQLテーブルからデータを選択するには、Selectステートメントを使用してください。1。selectColumn1、column2fromtable_nameを使用して指定された列を取得するか、選択*を使用してすべての列を取得します。 2。句を使用して、selectname、agefromuserswhereage> 25などの行をフィルタリングします。 3. Orderbyを使用して、OrderByageDescなどの結果を並べ替え、年齢の降順を表します。 4。Limit5などの行数を制限するには、Limit5を制限して最初の5行を返すか、Limit10Offset20を使用してページングを実装します。 5。組み合わせて使用し、括弧
