Buenos días, necesito realizar un QUERY donde me me arroje todas las facturas que no tengan adjuntos los anexos, Tengo algo asi :
SELECT a.DocNum 'Número Factura Proveedor', a.NumAtCard as 'Numero de Referencia',a.DocDate as 'Fecha Factura',
a.CardCode as 'Codigo SN', a.CardName as 'Nombre SN',a.DocTotal as 'Total Factura', a1.FileName 'Nombre de Archivo Adjunto',
a1.FileExt'Extensión', a1.Date 'Fecha en que se adjunto el archivo '
FROM OPCH a
INNER JOIN ATC1 a1 on a.AtcEntry =a1.AbsEntry
pero no se donde poner alguna condición para que me de lo que necesito, alguien tiene alguna idea ? saludos
Si lo que quieres es que te muestre las que tienen y las que no tienen anexo, entonces bastaría con cambiar el Inner Join por un Left Join:
SELECT a.DocNum 'Número Factura Proveedor', a.NumAtCard as 'Numero de Referencia',a.DocDate as 'Fecha Factura',
a.CardCode as 'Codigo SN', a.CardName as 'Nombre SN',a.DocTotal as 'Total Factura', a1.FileName 'Nombre de Archivo Adjunto',
a1.FileExt'Extensión', a1.Date 'Fecha en que se adjunto el archivo '
FROM OPCH a
LEFT JOIN ATC1 a1 on a.AtcEntry =a1.AbsEntry
Aparte de la opción de Gera_Mendez que me parece correcta, si en la tabla a1 no existe registro de ficheros adjuntos de un afactura en concreto, no te deberían de salir ya que no existiría coincidencia. Si los datos son consistentes no te debería hacer falta ningún Where
Aún así adjunto un dibujos que me parece muy interesante acerca de los inner join y los datos que se pueden extraer dependiendo de lo que necesitemos de cada Tabla