Como te comentamos puedes utilizar las opciones del JOIN ->
LEFT,RIGHT, etc. y con ellas vas armando tu query, en tu caso como solo
quieres obtener los de t1 que no están e t2 con poner t2.num is null en
el where vas a obtener el resultado
SELECT * FROM t1 left JOIN t2 ON t1.num = t2.num where t2.num is null;
Saludos
PD: existen otras formas de obtener un resultado similar, EXCEPT o
alguna Subquery Expressions:
https://www.postgresql.org/docs/current/static/functions-subquery.html
On 10/08/17 13:50, Kernel wrote:
Voy a intentar explicarme con un ejemplo, necesito sacar todas
aquellas filas de t1, que no estan en t2.
Podría hacerlo con un 't1.num not in (select ....', pero lo necesito
para un caso bastante mas complejo.
tabla t1
num | name
-----+------
1 | a
2 | b
3 | c
tabla t2
num | value
-----+-------
1 | xxx
3 | yyy
5 | zzz
SELECT * FROM t1 INNER JOIN t2 ON t1.num = t2.num;
num | name | num | value
-----+------+-----+-------
1 | a | 1 | xxx
3 | c | 3 | yyy
Lo que quiero obtener :
num | name | num | value
-----+------+-----+-------
2 | b | |
Creo recordar que una vez vi algo en el manual
Gracias
El 10/08/2017 a las 19:19, Emanuel Calvo escribió:
{LEFT|RIGHT} OUTER JOIN ?
LInk https://www.postgresql.org/docs/9.6/static/tutorial-join.html
El 10 de agosto de 2017, 13:55, Kernel <jucab...@gmail.com
<mailto:jucab...@gmail.com>> escribió:
Hola,
me suena que hay una forma de obtener los registros que se han
quedado fuera de un join, estoy buscando en el manual pero no
consigo verlo,
¿me podéis dar una pista para buscar el el manual?
Gracias
--
--
Emanuel Calvo
Sr. Technical Services at Percona
Team Building at Ayres.io