概要
BigQuery は、Google が提供する低コスト、NoOps のフルマネージド分析データベースです。BigQuery では、インフラストラクチャを所有して管理したりデータベース管理者を置いたりすることなく、テラバイト単位の大規模なデータでクエリを実行できます。また、SQL が採用されており、従量課金制というメリットもあります。このような特徴を活かし、お客様は有用な情報を得るためのデータ分析に専念できます。
データテーブルを結合すると、データセットに関する有用な情報を取得できます。ただし、データを結合する際のよくある問題によって、不適切な結果が取得される場合があります。このラボでは、このような問題を回避する方法について詳しく学習します。
結合のタイプ:
- クロス結合: 1 つ目のデータセットの各行と 2 つ目のデータセットの各行が結合され、すべての組み合わせが出力されます。
- 内部結合: 結果テーブルにレコードを表示するには、両方のテーブルにキー値が存在する必要があります。両方のテーブルでキー値が一致している場合のみ、レコードが結合された状態で表示されます。
- 左結合: 左側のテーブルの各行が結果に表示されます。一致するレコードが右側のテーブルにあるかどうかは問いません。
- 右結合: 左結合の逆です。右側のテーブルの各行が結果に表示されます。一致するレコードが左側のテーブルにあるかどうかは問いません。
結合について詳しくは、結合のページをご覧ください。
ここでは、ecommerce データセットを使用します。このデータセットには、Google Merchandise Store に関する数百万件の Google アナリティクス レコードが含まれており、BigQuery に読み込まれています。このデータセットのコピーを使用して、フィールドや行からどのような分析情報が得られるのかを確認します。
クエリを理解、更新するために役立つ構文の情報については、標準 SQL のクエリ構文をご覧ください。
演習内容
このラボでは、以下のタスクを実行します。
- BigQuery を使用してデータセットを探索する
- データセット内の重複する行のトラブルシューティングを行う
- データテーブルを結合する
- 結合の各タイプについて理解する
設定と要件
各ラボでは、新しい Google Cloud プロジェクトとリソースセットを一定時間無料で利用できます。
-
Qwiklabs にシークレット ウィンドウでログインします。
-
ラボのアクセス時間(例: 1:15:00)に注意し、時間内に完了できるようにしてください。
一時停止機能はありません。必要な場合はやり直せますが、最初からになります。
-
準備ができたら、[ラボを開始] をクリックします。
-
ラボの認証情報(ユーザー名とパスワード)をメモしておきます。この情報は、Google Cloud Console にログインする際に使用します。
-
[Google Console を開く] をクリックします。
-
[別のアカウントを使用] をクリックし、このラボの認証情報をコピーしてプロンプトに貼り付けます。
他の認証情報を使用すると、エラーが発生したり、料金の請求が発生したりします。
-
利用規約に同意し、再設定用のリソースページをスキップします。
BigQuery コンソールを開く
- Google Cloud Console で、ナビゲーション メニュー > [BigQuery] を選択します。
[Cloud Console の BigQuery へようこそ] メッセージ ボックスが開きます。このメッセージ ボックスにはクイックスタート ガイドへのリンクと、UI の更新情報が表示されます。
- [完了] をクリックします。
タスク 1. 新しいデータセットを作成してテーブルを保存する
BigQuery プロジェクトで、「ecommerce」という名前の新しいデータセットを作成します。
- [エクスプローラ] セクションの左側のペインで、プロジェクト ID の横にある [アクションを表示] アイコンをクリックして [データセットを作成] を選択します。

- [データセット ID] に「
ecommerce」と入力します。他の項目はデフォルト値のままにして、[データセットを作成] をクリックします。
左側のペインで、対象のプロジェクトに ecommerce データセットが表示されます。
タスク 2. BigQuery でラボのプロジェクトを固定する
シナリオ: e コマースのウェブサイトで販売されている各商品の在庫ストックレベルに関する新しいデータセットがチームから提供されます。あなたは、ウェブサイト上の商品について、また他のデータセットとの結合に使用できる可能性があるフィールドについて把握したいと考えています。
新しいデータセットを含むプロジェクトは data-to-insights です。
BigQuery の一般公開データセットは、デフォルトでは BigQuery のウェブ UI には表示されません。data-to-insights は一般公開データセットのプロジェクトであるため、リソースツリーに固定する必要があります。
-
[エクスプローラ] パネルで [+ 追加] をクリックします。
-
[名前を指定してプロジェクトにスターを付ける] を選択します。
-
[プロジェクト名] に「data-to-insights」と入力します。
-
[スターを付ける] をクリックします。
-
[エクスプローラ] ペインに、スターを付けた data-to-insights プロジェクトが表示されます。

タスク 3. フィールドを確認する
あなたは、ウェブサイト上の商品について、またクエリを作成してデータセットを分析するために使用できる可能性があるフィールドについて把握したいと考えています。
-
[エクスプローラ] セクションの左側のペインで、[data-to-insights] > [ecommerce] > [all_sessions_raw] に移動します。
-
右側の [スキーマ] タブをクリックして、各フィールドとその情報を確認します。
タスク 4. ecommerce データセットの主要なフィールドを特定する
商品とフィールドについて詳しく確認します。あなたは、ウェブサイト上の商品について、また他のデータセットとの結合に使用できる可能性があるフィールドについて把握したいと考えています。
レコードを調べる
このセクションでは、ウェブサイト上の商品名と商品 SKU の件数、およびそれらのフィールドのうち一意のものがあるかどうかを確認します。
- ウェブサイト上の商品名と商品 SKU の件数を確認します。クエリエディタに以下のクエリをコピーして貼り付けます。
#standardSQL
# ウェブサイト上の商品の数を把握する
SELECT DISTINCT
productSKU,
v2ProductName
FROM `data-to-insights.ecommerce.all_sessions_raw`
-
[実行] をクリックします。
-
ウェブ UI の結果のページ情報部分で、返されたレコードの合計数を確認します。ここでは、2,273 件のプロダクトと SKU が返されます。

この結果は、一意のプロダクト SKU が 2,273 件あることを表しているのでしょうか。
- 以下のクエリをコピーして貼り付け、
DISTINCT を使用して一意の(重複を排除した)SKU を一覧表示します。
#standardSQL
# 一意の SKU の数を調べる
SELECT
DISTINCT
productSKU
FROM `data-to-insights.ecommerce.all_sessions_raw`
- [実行] をクリックします。
一意の SKU の数は 1,909 件です。
一意の SKU は 1,909 件ありますが、これはウェブサイト上の商品の合計数である 2,273 件より少ない数字です。最初の結果には、SKU が重複している商品が含まれている可能性があります。
-
レコードをさらに詳しく確認しましょう。複数の SKU を持つ商品と、複数の商品を持つ SKU を特定します。
-
以下のクエリをコピーして貼り付け、複数の SKU を持つ商品名があるかどうかを特定します。ここでは、STRING_AGG() 関数を使用することで、1 つの商品名に関連付けられているすべての商品 SKU が集約されます。
#standardSQL
# SKU が複数ある商品を特定する
SELECT
DISTINCT
COUNT(DISTINCT productSKU) AS SKU_count,
STRING_AGG(DISTINCT productSKU LIMIT 5) AS SKU,
v2ProductName
FROM `data-to-insights.ecommerce.all_sessions_raw`
WHERE productSKU IS NOT NULL
GROUP BY v2ProductName
HAVING SKU_count > 1
ORDER BY SKU_count DESC
# 商品名が一意ではない(バリエーションの場合)
- [実行] をクリックします。
結果:

複数の SKU を持つ商品名はありますか。クエリの結果を確認してください。
解答: はい
1 つの商品名が複数の SKU に関連付けられている場合もあります。商品のバリエーションによってこのようになることがあります。たとえば、1 つの商品名(例: T シャツ)に対して、色やサイズなど、複数の商品バリエーションがある場合があります。つまり、1 つの商品に多数の SKU があることを想定できます。
- 以下のクエリをコピーして貼り付け、確認します。
#standardSQL
SELECT
DISTINCT
COUNT(DISTINCT v2ProductName) AS product_count,
STRING_AGG(DISTINCT v2ProductName LIMIT 5) AS product_name,
productSKU
FROM `data-to-insights.ecommerce.all_sessions_raw`
WHERE v2ProductName IS NOT NULL
GROUP BY productSKU
HAVING product_count > 1
ORDER BY product_count DESC
# SKU が一意ではない(データ品質に問題がある)
- [実行] をクリックします。

質問: クエリの結果で、1 つの SKU の値に複数の商品名が関連付けられているものはありますか。それらの商品名にはどのような特徴がありますか。
解答: はい。複数の商品名が関連付けられている SKU が多数あります。商品名が複数存在するケースでは、スペルミスなどが原因で名前がわずかに異なる場合があります(例: 「Waterproof Gear Bag」と「Waterproof Gearbag」)。
これが問題となる可能性がある理由を次のセクションで確認します。
タスク 5. 問題: キーが一意でない
SKU は 1 つの商品を一意に特定するためのもので、他のテーブルと結合する際の基本的な結合条件となります。一意でないキーが存在すると、データに関する深刻な問題が発生する可能性があります。
-
クエリを作成して、SKU「
GGOEGPJC019099」にひも付けられたすべての商品名を特定します。
解答例:
#standardSQL
# この SKU に複数のレコードがある
SELECT DISTINCT
v2ProductName,
productSKU
FROM `data-to-insights.ecommerce.all_sessions_raw`
WHERE productSKU = 'GGOEGPJC019099'
- [実行] をクリックします。
| v2ProductName |
productSKU |
| 7" Dog Frisbee |
GGOEGPJC019099 |
| 7" Dog Frisbee |
GGOEGPJC019099 |
| Google 7-inch Dog Flying Disc Blue |
GGOEGPJC019099 |
クエリの結果によると、同じ商品に 3 つの異なる名前が付いています。この例では、名前に特殊文字が含まれているものが 1 つと、名前がわずかに異なるものが 1 つあります。
ウェブサイトのデータを商品在庫と結合する
複数の商品が関連付けられた SKU を含むデータセットを結合した場合の影響を確認しましょう。まず、商品在庫のデータセット(products テーブル)を参照して、この SKU がテーブル内で一意かどうかを確認します。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
# 別のテーブルに
# 商品(在庫あり)を結合
SELECT * FROM `data-to-insights.ecommerce.products`
WHERE SKU = 'GGOEGPJC019099'
- [実行] をクリックします。
結合における問題: 予期せず多対 1 の関係になっている SKU
次に、在庫のデータセットをウェブサイトの商品名および SKU と結合し、ウェブサイトで販売されている各商品と関連付けられた在庫ストックレベルを取得します。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
SELECT DISTINCT
website.v2ProductName,
website.productSKU,
inventory.stockLevel
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE productSKU = 'GGOEGPJC019099'
- [実行] をクリックします。
ウェブサイトのテーブルと商品在庫のテーブルを SKU で結合するとどうなりますか。在庫ストックレベルを取得できましたか。
解答: はい。ただし、stockLevel が 3 回表示されます(1 レコードにつき 1 つ)。
次に、在庫にある各アイテムのストックレベルの合計を取得するクエリを実行します。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
SELECT
productSKU,
SUM(stockLevel) AS total_inventory
FROM (
SELECT DISTINCT
website.v2ProductName,
website.productSKU,
inventory.stockLevel
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE productSKU = 'GGOEGPJC019099'
)
GROUP BY productSKU
- [実行] をクリックします。
タスク 6. 結合における問題の解決策: 結合前に一意の SKU を使用する
数字が 3 倍にならないようにするにはどうすればよいでしょうか。まず、他のデータセットと結合する前に、ウェブサイトから一意の SKU のみを取得する必要があります。
-
data-to-insights.ecommerce.all\_sessions\_raw から、重複を排除した productSKU の数を取得するクエリを作成します。
解答例:
#standardSQL
SELECT
COUNT(DISTINCT website.productSKU) AS distinct_sku_count
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
解答: ウェブサイトのデータセットから、重複を排除した SKU が 1,909 件取得されます。
結合における問題: 結合後にデータのレコードが失われる
ここでは、商品在庫のデータセットに対してもう一度結合します。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
SELECT DISTINCT
website.productSKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
- [実行] をクリックします。
レコードは何件返されましたか。重複排除後の SKU 1,909 件がすべて返されましたか。
解答: いいえ。1,090 件のレコードのみが返されました。
データセットを結合すると、819 件の SKU が失われました。具体的なフィールドの指定を追加して調査します。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
# 両方のテーブルから ID フィールドを取得
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.SKU AS inventory_SKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
# 両方のテーブルに存在する ID を取得。ここからどのように分析を進めるか?
- [実行] をクリックします。
結合後は、両方のデータセットの SKU が表示されています。
結合における問題の解決策: 適切な結合のタイプを選択し、検索条件に NULL を指定する
デフォルトの結合のタイプは内部結合です。これは、結合された左右両方のテーブルで一致する場合のみレコードを返します。
-
前のクエリを修正して別の結合のタイプを使用し、商品在庫の SKU のレコードと一致するものがなくても、ウェブサイトのテーブルの全レコードを取得するようにします。使用できる結合のタイプ: 内部結合(INNER JOIN)、左結合(LEFT JOIN)、右結合(RIGHT JOIN)、完全結合(FULL JOIN)、クロス結合(CROSS JOIN)
解答例:
#standardSQL
# 結合のタイプが重要
# 両方のテーブルから ID フィールドを取得する
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.SKU AS inventory_SKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
LEFT JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
- [実行] をクリックします。
左結合を適切に使用し、元のウェブサイトの SKU 1,909 件がすべて結果に返されました。
商品在庫のセットから何件の SKU が失われましたか。
-
クエリを作成して、在庫テーブルの NULL 値を検索条件に指定します。
解答例:
#standardSQL
# ウェブサイトのテーブルにはあって商品在庫テーブルにはない商品 SKU を探す
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.SKU AS inventory_SKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
LEFT JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE inventory.SKU IS NULL
- [実行] をクリックします。
- 以下のクエリをコピーして貼り付け、ウェブサイトのデータセットに含まれる具体的な SKU の一つを使用して確認します。
#standardSQL
# SKU の一つを使用して確認
SELECT * FROM `data-to-insights.ecommerce.products`
WHERE SKU = 'GGOEGATJ060517'
# クエリの結果、0 件のデータが返される
- [実行] をクリックします。
商品在庫データセットで SKU が失われている可能性があるのはなぜですか。
解答: 簡単な答えはありません。ビジネス上の理由である可能性があります。
- 一部の SKU は在庫として保管しないデジタル商品の可能性がある
- 過去にウェブサイトからの注文で販売した古い商品が、現在の在庫に含まれていない
- 正当な理由で在庫から失われた、追跡が必要なデータである
商品在庫データセットには存在するものの、ウェブサイトから失われているデータはありますか。
- 別の結合のタイプを使用してクエリを作成し、調査します。
解答例:
#standardSQL
# 逆の結合を使用する
# ウェブサイトにはあって在庫にはないレコードを探す
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.SKU AS inventory_SKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
RIGHT JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE website.productSKU IS NULL
- [実行] をクリックします。
解答: はい。2 つの商品 SKU がウェブサイトのデータセットから失われています。
次に、商品在庫データセットから他のフィールドを追加して詳細を確認します。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
# どのような商品か?
# SELECT ステートメントにフィールドを追加する
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.*
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
RIGHT JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE website.productSKU IS NULL
- [実行] をクリックします。
以下の商品が ecommerce ウェブサイトのデータセットから失われている理由は何ですか。

解答例:
- 1 つは新商品(注文なし、感情スコアなし)、1 つは「店舗のみ」に存在する商品
- もう 1 つは、まだ注文のない新商品
新しい商品がウェブサイトのデータセットに表示されない理由は何ですか。
- ウェブサイトのデータセットは、顧客による過去の注文の取引であり、まだ 1 つも販売されていない新商品は、閲覧または購入が発生するまでウェブ分析に表示されない
注:
通常は、本番環境のクエリでは右結合を使用しません。左結合を使用して、テーブルの位置を切り替えます。
ウェブサイトまたは在庫にない商品をすべて 1 つのクエリで取得するにはどうすればよいですか。
- 別の結合のタイプを使用してクエリを作成します。
解答例:
#standardSQL
SELECT DISTINCT
website.productSKU AS website_SKU,
inventory.SKU AS inventory_SKU
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
FULL JOIN `data-to-insights.ecommerce.products` AS inventory
ON website.productSKU = inventory.SKU
WHERE website.productSKU IS NULL OR inventory.SKU IS NULL
- [実行] をクリックします。
819 + 2 = 821 件の商品 SKU が表示されます。
左結合と右結合を組み合わせると完全結合になり、結合キーが一致するかどうかにかかわらず、両方のテーブルからすべてのレコードが返されます。その後、どちらか一方で一致しないレコードを除外します。
結合における問題: 意図しないクロス結合
データテーブルのキー同士の関係(1:1、1:N、N:N)を理解していないと、予期しない結果が返される場合があります。また、クエリのパフォーマンスが大幅に低下する可能性もあります。
最後の結合のタイプはクロス結合です。
サイト全体の割引率を含む新しいテーブルを作成します。この割引率は、「セール」のカテゴリに含まれるすべての商品に適用されます。
qwiklabs-*** という名前のテーブルを置き換えます。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
CREATE OR REPLACE TABLE ecommerce.site_wide_promotion AS
SELECT .05 AS discount;
- [実行] をクリックします。
左側のペインの [リソース] で、[qwiklabs-gcp-xxx] > [ecommerce] に [site_wide_promotion] が表示されます。
- 以下のクエリをコピーして貼り付け、セールに含まれる商品の数を確認します。
SELECT DISTINCT
productSKU,
v2ProductCategory,
discount
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
CROSS JOIN ecommerce.site_wide_promotion
WHERE v2ProductCategory LIKE '%Clearance%'
- [実行] をクリックします。
注: クロス結合の条件(例: ON や USING)は構文に含まれていません。フィールドは単純に最初のデータセットと乗算され、すべてのアイテムに 0.05 の割引が適用されます。
割引テーブルに予期せず複数のレコードが追加された場合の影響を確認しましょう。
- 以下のクエリをコピーして貼り付け、プロモーション テーブルにさらに 2 つのレコードを追加します。
#standardSQL
INSERT INTO ecommerce.site_wide_promotion (discount)
VALUES (.04),
(.03);
- [実行] をクリックします。
次に、プロモーション テーブルのデータの値を確認します。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
SELECT discount FROM ecommerce.site_wide_promotion
- [実行] をクリックします。
82 件すべてのセール商品に割引を適用するとどうなりますか。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
# 次のようになります。
SELECT DISTINCT
productSKU,
v2ProductCategory,
discount
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
CROSS JOIN ecommerce.site_wide_promotion
WHERE v2ProductCategory LIKE '%Clearance%'
- [実行] をクリックします。
商品は何件返されましたか。
解答: 82 件ではなく 246 件返されます。開始時にテーブルに存在した元のレコード数より多くなっています。
1 つの商品 SKU を確認して、根本的な原因を調査しましょう。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
SELECT DISTINCT
productSKU,
v2ProductCategory,
discount
FROM `data-to-insights.ecommerce.all_sessions_raw` AS website
CROSS JOIN ecommerce.site_wide_promotion
WHERE v2ProductCategory LIKE '%Clearance%'
AND productSKU = 'GGOEGOLC013299'
- [実行] をクリックします。
クロス結合によってどのような影響がありましたか。
解答:
3 つの割引コードがクロス結合されるため、元のデータセットが 3 倍になります。
注: この動作はクロス結合だけで発生するものではありません。通常の結合でも、データの関係が多対多の場合は予期せずクロス結合になる場合があります。その場合、数百万件、数十億件といったレコードが意図せず返されることもあります。
解決策は、結合する前にデータの関係性を理解し、キーが一意ではない場合があることを想定することです。
タスク 7. 重複行を排除する
ラボの開始時に、単一の SKU に対して複数の商品名が表示されるクエリを作成しました。このようなレコードからの重複除去は、データ分析では一般的な手法です。SKU 1 つにつき商品が 1 つだけ取得される方法を確認します。
SKU に関連付けられたすべての商品の名前を表示するクエリを実行します。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
# 1 つの SKU に対して複数の product_names を表示した前述のクエリを再び呼び出す
SELECT
DISTINCT
COUNT(DISTINCT v2ProductName) AS product_count,
STRING_AGG(DISTINCT v2ProductName LIMIT 5) AS product_name,
productSKU
FROM `data-to-insights.ecommerce.all_sessions_raw`
WHERE v2ProductName IS NOT NULL
GROUP BY productSKU
HAVING product_count > 1
ORDER BY product_count DESC
- [実行] をクリックします。
ほとんどの商品名はよく似ており、また、1 つの SKU と 1 つの商品をマッピングするため、product_names を 1 つのみ取得するクエリを作成します。Felipe Hoffa によるこちらの StackOverflow の投稿を参考にしてください。
- 以下のクエリをコピーして貼り付けます。
#standardSQL
# 1 つの SKU に関連付けられた 1 つの名前を取得する
WITH product_query AS (
SELECT
DISTINCT
v2ProductName,
productSKU
FROM `data-to-insights.ecommerce.all_sessions_raw`
WHERE v2ProductName IS NOT NULL
)
SELECT k.* FROM (
# 商品を 1 つの配列に集約して
# 結果を 1 つだけ取得する
SELECT ARRAY_AGG(x LIMIT 1)[OFFSET(0)] k
FROM product_query x
GROUP BY productSKU # this is the field you want deduplicated
);
- [実行] をクリックします。
SKU ごとに重複する商品名を排除しました。他のデータセットに対して結合を行う前に、上記のクエリと独自のデータセットで試し、フィールドの重複を排除してください。
タスク 8. 理解度を確認する
お疲れさまでした
これでこのラボは完了です。重複しているレコードを特定し、各結合のタイプを使用する状況を理解することで、SQL の結合における深刻な問題を確認しました。
ラボを終了する
ラボが完了したら、[ラボを終了] をクリックします。ラボで使用したリソースが Google Cloud Skills Boost から削除され、アカウントの情報も消去されます。
ラボの評価を求めるダイアログが表示されたら、星の数を選択してコメントを入力し、[送信] をクリックします。
星の数は、それぞれ次の評価を表します。
- 星 1 つ = 非常に不満
- 星 2 つ = 不満
- 星 3 つ = どちらともいえない
- 星 4 つ = 満足
- 星 5 つ = 非常に満足
フィードバックを送信しない場合は、ダイアログ ボックスを閉じてください。
フィードバックやご提案の送信、修正が必要な箇所をご報告いただく際は、[サポート] タブをご利用ください。
Copyright 2020 Google LLC All rights reserved. Google および Google のロゴは Google LLC の商標です。その他すべての企業名および商品名はそれぞれ各社の商標または登録商標です。