問題タブ [patindex]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - SQL - 文字列を含む列から数字のみを選択
私はこのようなテーブルを持っています(最初の列にはIDが含まれ、2番目の列は文字列(いくつかの式)を含むvarcharです)-
次のような出力を与えるクエリが必要です-
など.. (1.205 などの 4 桁未満の数字と 1000 以外の数字のみ)
これでpatindexを使用するのは非常に困難です
これに関する解決策を教えてください
sql - 'AA' 文字列の T-Sql 2008 PatIndex エラー
文字列から非英数字を削除するために、SQL2008 でこのコードを実行しています。
それは完璧に機能しましたが、今では「AA」の部分を含む文字列を取得しています:
返す
そして私は期待した
問題なく他の繰り返し文字を試しましたが、aa でも再現できます。
ヒントのトラブルシューティングはありますか?
sql-server - SQL Server - Table1 を Table2 ON substring(T1.Field) = T2.ID に結合します
MyOrders と MyDrivers の 2 つのテーブルがあります。
テーブル MyOrders には、Details という列があります (データ型 TEXT - わかっていますが、データベースを構築していません...)
MyOrders.Details には、テーブル MyDrivers の ID 値に対応する数値のコンマ区切りリストが含まれている場合があります。
目標は、これらのリストを使用して MyOrders を MyDrivers に結合することです。
例えば:
ここでの望ましい結果は、MyOrderID 1 に対して、結果として 5 つの行を受け取ることです。同じ注文の詳細リストで、この注文に割り当てられた 5 人のドライバーごとに 1 つです。リスト (NULL、''、' '、' ') がない場合は、行を返したくありません。**ユーザーがこのフィールドの値を削除してスペースを残す場合があるため、TRIM を使用する必要があると想定しています。しかし、彼らは常に必要なコンマを追加するので、少なくともそれは...
どうすればいいのかわかりません。SQL については、まだまだ学ぶことがたくさんあります。役立つヒントやアイデアをいただければ幸いです。
事前にどうもありがとうございました!
sql-server - SQL サーバーと patindex の予期しない結果
NANP 形式で電話番号を確認しようとしています。
私はこのコードを使用しています
ただし、期待どおりに機能しません。有効なはずの一部の数値 (+14104536330 など) が式と一致しません。
サンプル コードを使用してSQL Fiddleを作成しました。patindex 式のどこが間違っていますか?
php - PHP で文字列内の特殊文字の位置を決定する
たとえば、文字列内の特殊文字の位置を決定する必要があります。
E77eF/74/VA の 6 と 9 の位置 (1 から数えて) には「/」があるので、それらを位置番号に変更する必要があります -> E77eF 6 74 9 VA
MSSQL では PATINDEX を使用できますが、これには php を使用する必要があります。0-9a-zA-Z 以外のすべてで機能するはずです
私はphp.netで見つけましたが、うまくいきませんstrpos()
。strrpos()
とにかくそのようなことをしようとしますか?
sql - Sqlは文字列内の最後の数字以外の文字を見つけます.
「10jnklgm51」などの文字列の最後の数字以外の文字を見つける方法。例で「m」を見つけるには、最も簡単な方法は何ですか?
string - 文字列内の文字の前にある最初の int を選択
このフォーラムの回答の背後にあるロジックに追加すると、文字列内の特定の一連の末尾文字を持つ最初の int をどのように選択するのでしょうか? つまり、「これは長さ15インチ!」から「15インチ」を抽出したいということです。
私は(答えに基づいて)次のことを試しました...
...しかし、「15 in」ではなく、例の文字列から「5 in」のみを抽出します。したがって、int 値全体が必要なだけでなく (このスクリプトの本来の目的は、文字列内の最初の int 値全体を見つけることでした)、文字列内の "in" の前にある int 値全体が必要です。
これは重複投稿の可能性があることを知っています。十分な評判を得たら、これを元のフォーラムの回答にコメントとして追加し、必要に応じてこの投稿を削除します。
sql - 検索キーに一致する結果を返すだけでなく、検索キーの後にアルファベット順にあるレコードも取得する SQL クエリ
タイトルは一口ですが、説明するのが難しいと感じました。
ユーザーが 4 などの検索キーを入力できる以前の Web サービスがあり、その検索キー (4、4a、4b など) で始まるレコードが返されました。
ここで、ユーザーが 4 を入力すると結果が返されるソリューションを実装するように依頼されました。
50 レコードの場合。
クエリの変更をどこから始めればよいかわかりません...検索される列は英数字であり、それが紛らわしいビットです。
クエリ自体は 20 行を超えますが、結果と検索キーをリンクする部分はわずかです。
そして、要求された順序は次のとおりです。
たとえば、現在 82 を渡すと、結果が得られます。
ただし、ユーザーが 82 と入力すると、8、8x、9、9x などの結果が返されないことが必要です。
tsql - 英語以外の (Latin1) 文字の列をチェックする T-SQL の選択
私のデータベースのデフォルト言語は に設定されていますSQL_Latin1_General_CP1_CI_AS
。
name
フィールドにアラビア語や中国語などの別の言語の文字が含まれている結果を返したいと考えています):
Albra アブラハム
以下の WHERE 句で次のコードを試しましたが、結果セットは常に空です。
a.Name NOT LIKE '%[^A-z]%'
PATINDEX('%[A-Z,0-9]%',a.Name) > 0
ASCII(a.Name) NOT BETWEEN 65/* A */ and 90/* Z */ AND ASCII(a.Name) NOT BETWEEN 97 /* a */ AND 122 /* z */
a.Name COLLATE SQL_Latin1_General_CP1_CI_AS NOT LIKE '%[^0-9a-zA-Z]%'
アップデート
私はSQL Server 2012を使用しています(SQL Server 2005ではありません)。「SQL Server 2005で英語以外の文字を含む行を選択する方法」に対する受け入れられた回答のコードを試しました(特別なものではなく、英語以外の文字のみをフィルタリングする必要があります文字) "しかし、私のデータベースでは機能しません。