問題タブ [xquery]
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-server-2008 - Xquery を使用して XML タイプ フィールドで SQL クエリから返された行をフィルター処理する
(SSIS 経由で) 発生したエラーに関するデータを格納するテーブルがあります。情報を含むメインの列は XML として格納されます。この列で名前と値のペアを照会できるようにしたいと考えています。
SQLで説明するには:SELECT * FROM #tmp WHERE seq='7406834'
表の例:
誰でも構文を手伝ってもらえますか。基本的に派生テーブルを使用して、各要素を列にしてクエリを実行することができましたが、各行のすべての属性 (id、カテゴリ、詳細) を教えてくれるもっと単純な方法があるはずですdetails.seq='xxxxx' を持つもの。
xml - 複数のxmlファイルをXQueryしますか?
xQuery から 2 つのドキュメントを開いて結合することはできますか?
xml - SQL Server 2005 で XQuery を使用して XML からすべてのコメントを削除する方法は?
XML からすべてのコメントを簡単に選択できます。
しかし、それらを削除する方法が見つかりません。@XML.modify('delete ...') の適切な構文はありますか?
sql-server-2005 - Xquery で xml からデータの文字列を検出する方法
次のような値を保持する Sql Server データベースに、型指定されていない XML 列があります。
次のクエリで試していました
しかし、ここで問題があるのは、関数が存在する場合でも 1 を返すことです@x='<root><a>12</a></root>'
そのような場合、出力を「0」にしたいと思います。
抜け道はありますか?
xml - ノードの順序に基づいてXML列(SQL Server 2005)からレコードを選択します
SQLServer2005テーブルにXMLデータ型として定義された列があります。その列の2つのノードの順序に基づいて、このテーブルからレコードを選択する方法はありますか?たとえば、XMLには次の構造があります。
緯度/経度が逆の順序であるレコードがあるかどうかを確認したいと思い<longitude/>
ます<latitude/>
。いくつかのXPath式を試しましたが、うまくいきませんでした。
sql-server - SQL Server 2005 で XQuery を使用して XML 内部テキストを取得する
XQuery を使用して XML ノードの内部テキストを選択するにはどうすればよいですか?
Microsoft Books Online は、以下の属性を取得する方法を示しています。
保証ノードの内部テキスト値を取得するにはどうすればよいですか?
duplicates - XQuery で重複するノードを削除するにはどうすればよいですか?
その場で生成する XML ドキュメントがあり、そこから重複するノードを削除する関数が必要です。
私の関数は次のようになります。
サンプル出力は次のとおりです。
私の本のルートタグに1つのエントリだけが必要で、重複を削除する必要があるパンフレットなど、他のタグもあります。何か案は?
以下のコメントを更新しました。一意のノードとは、まったく同じ内容と構造を持つ複数のノードを削除することを意味します。
regex - スクリーン スクレイピング: 正規表現または XQuery 式?
インタビューのクイズの質問に答えていましたが、質問はスクリーンスクレイピングをどのように行うかについてでした. つまり、情報を直接照会するより構造化された方法 (Web サービスなど) がないと仮定して、Web ページからコンテンツを選択することです。
私の解決策は、XQuery式を使用することでした。必要なコンテンツが HTML 階層のかなり深いところにあったため、式はかなり長くなりました。id
属性を持つ要素を見つける前に、かなりの方法で祖先を検索する必要がありました。たとえば、製品ディメンションの Amazon.com ページをスクレイピングすると、次のようになります。
これはかなり厄介な表現ですが、Amazon が Web サービス API を提供するのはそのためです。とにかく、それはほんの一例です。質問は Amazon に関するものではなく、スクリーン スクレイピングに関するものです。
インタビュアーは私の解決策を気に入らなかった. Amazon によるページ デザインの変更により、XQuery 式の書き直しが必要になる可能性があるため、彼はそれが壊れやすいと考えました。適用対象のページ内のどこにも一致しない XQuery 式をデバッグするのは困難です。
私は彼の発言に反対しませんでしたが、彼の解決策が改善だとは思いませんでした. たとえば、Perl を使用すると、次のようになります。
私の反論は、これは Amazon が HTML コードを変更しても影響を受けやすいというものでした。HTML タグを大文字 ( <LI>
) で綴ったり、CSS 属性を追加したり、ラベル「製品の寸法:」を「寸法:」に変更<b>
し<span>
たり、その他のさまざまな種類の変更を行ったりすることができます。私の言いたいことは、彼が私の XQuery ソリューションで指摘した弱点は、正規表現では解決できないということでした。
さらに、正規表現に十分なコンテキストを追加しない限り、正規表現は誤検知を検出する可能性があります。また、コメント、属性文字列、または CDATA セクション内にあるコンテンツと意図せず一致することもあります。
私の質問は、スクリーンスクレイピングを行うためにどのテクノロジーを使用していますか? なぜそのソリューションを選択したのですか?それを使用する説得力のある理由はありますか?それとも他のものを使用しないのですか?上に示したもの以外に 3 番目の選択肢はありますか?
PS: 議論のために、目的のコンテンツを取得するための Web サービス API やその他のより直接的な方法はないと仮定します。
sql-server-2005 - XQuery および SQL Server 2005 からの行セットの取得
SQL Server 2005 では、以下のコードから最初のレコードを取得できます。すべてを取得するにはどうすればよいですか? 「[1]」インデックスを削除すると、シングルトン エラーが発生します...