20/04/2015, 10:20
|
| | | Fecha de Ingreso: julio-2013
Mensajes: 547
Antigüedad: 11 años, 5 meses Puntos: 46 | |
Respuesta: Encontrar registros con X cantidad de lineas !!! Cita:
Iniciado por Libras Estas trabajando con sql server??? de ser asi puedes ver el uso de la funcion row_number que ayudaria a encontrar cuales son las que tienen menos de 3 lineas, o en su defecto podrias intentar con la funcion having, te dejo un ejemplo con la funcion having ;)
Código SQL:
Ver originalCREATE TABLE #facturas( id_factura INT ) CREATE TABLE #detalle ( id_factura INT, detalle VARCHAR(20) ) INSERT INTO #facturas VALUES (1) INSERT INTO #facturas VALUES (2) INSERT INTO #facturas VALUES (3) INSERT INTO #detalle VALUES (1,'detalle1') INSERT INTO #detalle VALUES (1,'detalle2') INSERT INTO #detalle VALUES (1,'detalle3') INSERT INTO #detalle VALUES (1,'detalle4') INSERT INTO #detalle VALUES (2,'detalle1') INSERT INTO #detalle VALUES (2,'detalle2') INSERT INTO #detalle VALUES (2,'detalle3') INSERT INTO #detalle VALUES (3,'detalle1') INSERT INTO #detalle VALUES (3,'detalle2') INSERT INTO #detalle VALUES (3,'detalle3') INSERT INTO #detalle VALUES (3,'detalle4') SELECT t1.id_factura,COUNT(t2.id_factura) AS total FROM #facturas AS t1 LEFT JOIN #detalle AS t2 ON (t1.id_factura=t2.id_factura) GROUP BY t1.id_factura HAVING COUNT(t2.id_factura)<4
El resultado de esta consulta es la factura 2 que solamente tiene 3 registros :)
Muchas gracias, llegue con su ejemplo a lo que deseaba
Código SQL:
Ver originalSELECT t1.DOCUMENTO,COUNT(t2.Documento) AS total FROM DLCEC.DOCUMENTO_POS AS t1 LEFT JOIN DLCEC.DOC_POS_LINEA AS t2 ON (t1.DOCUMENTO=t2.DOCUMENTO) WHERE t2.CAJA='0003' GROUP BY t1.DOCUMENTO,t1.FCH_HORA_CREACION HAVING COUNT(t2.DOCUMENTO)<4 ORDER BY t1.FCH_HORA_CREACION DESC
__________________ Al contrario de lo que muchos podrían afirmar, ayudar no te hace pobre, sino más rico. |