Bases de Datos > SQL Server
Duda Con Vistas En Sql Server
aicrag:
:unsure: , como??? si te da error, como podés ver el resultado...
según tu consulta sería algo así:
CREATE VIEW dbo.Productos_mas_vendidos
AS
SELECT TOP 100 PERCENT TProducto.CodProducto,
TProducto.NombreGenerico, SUM(TDetalleVenta.Cantidad)
AS Cantidad, TLaboratorio.Descripcion AS Laboratorio
...
lencho:
--- Cita de: "aicrag" --- :unsure: , como??? si te da error, como podés ver el resultado...
según tu consulta sería algo así:
CREATE VIEW dbo.Productos_mas_vendidos
AS
SELECT TOP 100 PERCENT TProducto.CodProducto,
TProducto.NombreGenerico, SUM(TDetalleVenta.Cantidad)
AS Cantidad, TLaboratorio.Descripcion AS Laboratorio
...
--- Fin de la cita ---
mi consulta es identica a la tuya excepto el PERCENT. Para que sirve ?
BYTE.
aicrag:
y PERCENT es el porcentaje de filas de la consulta..
si tuvieras algo como
SELECT TOP n PERCENT campos FROM tabla
si no especificás el PERCENT n seria el número de filas que se devuelven, pero si sí lo hacés n sería el porcentaje de filas del conjunto de registros.. :)
así el 100 PERCENT como estás en una vista y no se permite el ORDER BY especificas el TOP con el 100% de los registros. :ph34r:
trentia:
En vistas no podemos usar clausulas order by ni clausulas top, ....
Estas clausulas la deberemos usar al ejecutar la vista.
Por ejemplo
create view dbo.View1
as
........
SELECT * FROM View1 Order by X
SELECT TOP 100 * FROM View1 Order by X
Deberemos de tratar a la vista como si fuera una tabla
Espero que haya sido de ayuda
Javier Tirado
IT Consultor
TRENTIA Consulting
Business Intelligence
Navegación
[*] Página Anterior
Ir a la versión completa