Таблица 1BigQuery сливаться присоединиться, когда ключ является нулевым
+---------+-----------+--------+
| user_id | email | action |
+---------+-----------+--------+
| 1 | [email protected] | open |
+---------+-----------+--------+
| 2 | null | click |
+---------+-----------+--------+
| 3 | [email protected] | click |
+---------+-----------+--------+
| 4 | [email protected] | open |
+---------+-----------+--------+
Таблица 2
+---------+-----------+--------+
| user_id | email | event |
+---------+-----------+--------+
| 1 | [email protected] | sent |
+---------+-----------+--------+
| null | [email protected] | none |
+---------+-----------+--------+
| 2 | [email protected] | sent |
+---------+-----------+--------+
| 4 | [email protected] | sent |
+---------+-----------+--------+
Я хочу присоединиться на основе t1.user_id = t2.user_id, но когда есть нуль для ключ, присоединиться на t1.email = t2.email
Я попробовал несколько способов регистрации в BigQuery как:
1.) ON COALESCE (t1.user_id, t1.email) = COALESCE (t2.user_id, t2. электронная почта)
2.) ВКЛ на случае, когда t2.user_id не равен нулю, тогда t1.user_id = t2.user_id else t1.email = t2.email end
Ни одна работа. Как это может быть сделано?
SQL имеет «IS DISTINCT »и« НЕ ОТКЛЮЧАЕТСЯ », но я не вижу этого в BigQuery. –