---
title: "SQLの専門家向け XPathとXQueryのチュートリアル（動画）"
date: "2021-08-04"
categories: 
  - "sql"
  - "xpath"
  - "xquery"
tags: 
  - "altova-online-training"
  - "databasespy"
  - "sql"
  - "xmlspy"
  - "xpath"
  - "xquery"
description: XPathやXQueryを学ぶことは、特にSQLの知識がある場合は、比較的容易です。
---
Status: #blog

Tags:  #altova-online-training #databasespy #sql #xmlspy #xpath #xquery

Categories: [database + sql](/blog/ja/category/database-sql.md) | [xpath+xquery](/blog/ja/category/xpathxquery.md) | [xpath+xquery](/blog/ja/category/xpathxquery.md)
# SQLの専門家向け XPathとXQueryのチュートリアル（動画）

Altovaに入社する前は、XPathとXQueryの両方について全く知識がありませんでした。最初の仕事として、できるだけ早く両方のクエリ言語を習得し、それらを分かりやすく解説した短い動画を作成することが求められました [XPath チュートリアルと XQuery チュートリアル](https://www.youtube.com/watch?v=NUTvFwXGN-M). MobileTogetherでのアプリケーション開発や、XMLSpyでのデータ検索において、両方の言語の機能と特徴を深く理解することが重要でした。私はSQLの知識を基盤とし、まずSQLでクエリを作成し、その後、それらのクエリをXPathとXQueryでどのように再現できるかを学びました。

![](/blog/images/shutterstock_70728256.jpg)

<!--more-->

# XPathおよびXQueryの基礎トレーニングコース

Altovaは、幅広い分野を網羅した、無料で利用できるトレーニング資料を豊富に提供しています [XPath](https://www.altova.com/ja/training/xpath3/) そして [XQuery](https://www.altova.com/ja/training/xquery3/). このトレーニング資料を読み、付属のサンプルXMLファイルに基本的な概念を適用するだけで、これらのクエリ言語の両方を深く理解できることがわかりました [XMLSpy](https://www.altova.com/ja/xmlspy-xml-editor). XPathだけで膨大なXMLファイルを瞬時に検索できることには、非常に感銘を受けました。しかし、XPathのチュートリアルでより高度な活用事例を開発していくうちに、XQueryを使って構築されたクエリは、ほとんどの場合、はるかに簡潔で、読みやすく、デバッグもしやすいことに気づきました。

さらに読み進めていくうちに、 [Altovaのトレーニング資料集](https://www.altova.com/ja/training-tutorials) XQueryのFLWOR式における構文は、SQLクエリの構文と非常に似ていることに気づきました。XPathとXQueryは、その根本において、データセットをより小さなデータテーブルに整理します。どちらも、複雑な条件や変換関数を使用してデータをフィルタリングすることができます。さらに、両方の言語は、複数のデータソースからデータを取得し、それらを結合して、複数の正規化されたデータソースに基づいて結果セットを生成することができます。これらの言語間に存在する類似性を考慮すると、XPathとXQueryを習得する最も簡単な方法は、SQLから逆算して学ぶことだと考えました。この知識を活かし、学習に取り掛かりました。

![XQueryチュートリアル：XQueryとSQLの比較](/blog/images/xquery-editor.png)

# 全体をまとめると

[MobileTogether](https://www.altova.com/ja/mobiletogether)には、XQueryのチュートリアルに最適なサンプルモバイルアプリケーション「MyCar」が含まれています。このアプリケーションは、ユーザーに夢の車について質問する方法を示しています。データは、データベース内に定義されたパラメータのセットによって提供されており、多くのレコードが含まれており、それぞれのレコードが複数のデータポイントを持っていたため、非常に扱いやすかったです。このデータセット自体は、MDBファイルとして提供されており、私は[DatabaseSpy](https://www.altova.com/ja/databasespy)を使ってこのファイルを開き、XML形式でエクスポートしました。その後、エクスポートしたファイルを修正し、クエリの可読性を向上させるために、いくつかのフィールドを変更しました。

両方のデータセットが同一であったため、同じ結果を返すSQL、XQuery、およびXPathの式を作成することができました。これにより、私はXPathとXQueryを迅速に習得し、理解することが非常に容易になりました。数時間で複雑なクエリを作成できるようになりました。その後、以下の動画を作成することにしました。この動画では、一般的なクエリのシナリオを8つ紹介し、それぞれの言語で同等のクエリを示しています。

![SQLの例を通して、XQueryを学習する](/blog/images/sql-export.png)

# XPathおよびXQueryのトレーニングビデオ

以下に、動画で使用されたすべてのサンプルクエリとデータセットへのリンクがあります。もし、組み込みのXPath/XQueryエディタでそれらを試してみたい場合は、XMLSpyの[無料トライアル](https://www.altova.com/ja/xmlspy-xml-editor/download)をお試しください。このエディタは、XMLファイルと[JSON](https://www.altova.com/ja/xmlspy-xml-editor/json_editor)ファイルの両方に対応しています。

**[サンプルデータとクエリ](https://github.com/altova/XPath-XQuery-SQL-Tutorial)**

![](https://www.youtube.com/watch?v=NUTvFwXGN-M)
