BigQuery परिचय
Matthew Forrest
Field CTO
INNER JOIN: वैल्यू दोनों टेबल में हों।
LEFT JOIN: बाएँ टेबल की सभी पंक्तियाँ, दाएँ से मैच।
RIGHT JOIN: दाएँ टेबल की सभी पंक्तियाँ, बाएँ से मैच।
FULL JOIN: दोनों टेबल की सभी पंक्तियाँ, मैच और नॉन-मैच दोनों।
CROSS JOIN: दोनों टेबल की हर पंक्ति हर पंक्ति से मैच।

Customers: बायाँ टेबल
Orders: दायाँ टेबल
INNER JOIN: मेल खाते customers और उनके orders
LEFT JOIN: सभी customers दिखाएँ, भले ही कोई order न हो
RIGHT JOIN: सभी orders दिखाएँ, भले ही customer ID गायब हो
FULL JOIN: सभी customers और सभी orders, भले ही कुछ ने इंटरैक्ट न किया हो
CROSS JOIN: बिना किसी शर्त के हर order को हर customer से मैच करें
SELECT
c.customer_id, s.product_name
FROM customers c
-- The INNER keyword is optional
JOIN sales_data s
ON c.customer_id = s.customer_id;
| customer_id | product_name |
|-------------|----------------------|
| 1 | Bluetooth Headphones |
| 2 | Running Shoes |
SELECT
c.customer_id, s.product_name
FROM customers c
LEFT JOIN sales_data s
ON c.customer_id = s.customer_id;
| customer_id | product_name |
|-------------|----------------------|
| 1 | Bluetooth Headphones |
| 2 | Running Shoes |
| 3 | null |
SELECT
c.customer_id, s.product_name
FROM customers c
RIGHT JOIN sales_data s
ON c.customer_id = s.customer_id;
| customer_id | product_name |
|-------------|----------------------|
| 1 | Bluetooth Headphones |
| 2 | Running Shoes |
| null | External Microphone |
SELECT
c.customer_id, s.product_name
FROM customers c
OUTER JOIN sales_data s
ON c.customer_id = s.customer_id;
| customer_id | product_name |
|-------------|----------------------|
| 1 | Bluetooth Headphones |
| 2 | Running Shoes |
| 3 | null |
| null | External Microphone |
SELECT
c.customer_id,
s.product_name,
-- Adding table names separated
-- by a comma is a CROSS JOIN
-- Order is determined by the
-- left table, here "customers"
FROM customers c, sales_data s;
| customer_id | product_name |
|-------------|----------------------|
| 1 | Bluetooth Headphones |
| 1 | null |
| 2 | Bluetooth Headphones |
| 2 | null |
| 3 | null |
| 3 | Bluetooth Headphones |
SELECT
c.customer_id,
payments.method
FROM customers c,
UNNEST(
customers.payment_methods
) payments;
| customer_id | product_name |
|-------------|--------------|
| 1 | Visa |
| 1 | Mastercard |
| 1 | Venmo |
| 1 | Paypal |
| 2 | Amex |
| 2 | Visa |
BigQuery परिचय