Bases de Datos > SQL Server

 Duda Con Vistas En Sql Server

<< < (2/2)

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

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa