я улучшил свой вопрос с примерами таблицами для лучшего пониманиявыбрать из нескольких таблиц, когда один никогда не используются
У меня есть 3 таблицы со следующими строками:
TABLE1 t1 TABLE t2 TABLE t3
ID NAME OBS ID HW_VER ID SERIAL
----------------- ----------- ------------
1 | Name1 | Obs1 1 | HWVer1 5 | Serial5
2 | Name2 | Obs2 2 | HWVer2 6 | Serial6
3 | Name3 | Obs3 3 | HWVer3 7 | Serial7
4 | Name4 | Obs4
5 | Name5 | Obs5
6 | Name6 | Obs6
7 | Name7 | Obs7
Теперь я хочу, чтобы выбрать id, name и obs при выполнении 2 условий:
- id присутствует в t2 или t3 (никогда в обоих случаях);
- это относится либо к t2 t3 или атрибутов (например, t2.HW_VER = 'HWVER1.), А не на обоих
я сделал что-то вроде этого, но это не так:
SELECT DISTINCT t1.id, t1.name, t1.obs
FROM table1 t1, table2 t2, table3 t3
WHERE t1.id IN (t2.id, t3.id) AND t3.serial='Serial6';
I не могут использовать для этого союзы, внешние таблицы или представления. Пожалуйста, дайте мне знать в случае возникновения дополнительных вопросов.
Большое спасибо за ваши ответы, я очень ценю ваше время ..
Вопрос в том, что вы пытаетесь сосчитать? –
Пожалуйста, разместите образцы данных с нужным результатом - ваш вопрос немного неясен. – sgeddes
Ваша проблема трудно представить без понимания вашей схемы. Но ваше предложение where фактически является OR. попробуйте сделать его AND: где t1.id = t2.id AND t1.id = t3.id. – NickJ