У меня есть 2 таблицы, называемые table_one
и table_two
, со следующими свойствами:Выберите данные из таблиц MySQL
- Оба из них имеют одну общую колонку под названием
column_id
. - Значения
table_one.column_id
являются уникальными, тогда как значенияtable_two.column_id
- нет. table_two
имеет два дополнительных столбца:ts_one
иts_two
.ts_one
не является нулевым, ноts_two
может быть пустым. Только одна строка вtable_two.column_id
допускает значениеts_two
равным нулю.- Не все значения от
table_one.column_id
могут быть представлены вtable_two.column_id
.
Например:
table_one
column_id
1
2
3
4
5
table_two
column_id ts_one ts_two
2 2014-10-01 null
3 2014-10-02 2014-10-03
3 2014-10-05 null
4 2014-10-01 2014-10-05
Мне нужно, чтобы получить все идентификаторы из table_one.column_id
, где:
- идентификатора в
table_one.column_id
, а не в table_two.column_id (1, 5 удовлетворяет что) - id в
table_one.column_id
и вtable_two.column_id
, гдеts_two
не является нулевым и нет других строк с одинаковым идентификатором, гдеts_two
с нулевым значением - (удовлетворяет только 4).
Оба условия должны быть приняты во внимание. Результаты должны включать 1, 4 и 5.
Я только что проверил свой код, и он работает – Jaylen
Оба условия должны быть приняты во внимание одновременно. результат должен включать 1, 4 и 5 – poul
Поместите 'UNION' и' DISTINCT t.column_id' во второй запрос: [SqlFiddle] (http://sqlfiddle.com/#!2/0dfe7/3) – MamaWalter