Hola... se puede hacer algo como :
SELECT TOP @VARIABLE FROM TABLA
?
??????
de modo de obtener un numero variable de registros
| ||||
GRACIAS... por mientras lo hice con muchos if :P if @valor=1 begin select top 1 from table end .... y asì por muchos màs..... (una asquerosidad) XDD Qué es el sql execute??... se puede ocupar con el query del sql server 2000?? saludos |
| ||||
te paso un proc que tengo yo para hacer select dinamicos (no dejo que el usuario los escriba, mas bien yo los construyo en base a unas reglas ya establecidas)
Código:
uso:Create procedure SQLDinamico @cTabla as char(25), @cFini as char(25), @cFiltro as char(300), @cCampos as char(150) as begin declare @cSql as varchar(2500) set @cSql = 'Select '+ltrim(Rtrim(@cFini)) if len(ltrim(rtrim(@cCampos)))=0 set @cCampos = ' * ' set @cSql = @cSql +' '+ltrim(rtrim(@cCampos)) + ' From '+ ltrim(rtrim(@cTabla)) + ' '+ltrim(rtrim(cast(@cFiltro as char(300)))) --Para debugear puedes descomentar esto: /* Print @cSql -- que dara como resultado como esta formando la instruccion */ exec sp_sqlexec @cSql end Primer parametro: Tabla en la que se realiza el select segundo: funcion a utilizar (distinct, top, etc) tercero: Filtro a usar (where, order by, group, etc, van aca) Cuarto: campos a te pongo un par de ejemplos exec SQLDinamico 'tbl_asegs_humano','distinct ',' order by id_linea','id_linea' exec SQLDinamico 'tbl_asegs_humano','Top 100 ',' where vigor =0 order by id_linea','*' Saludos Última edición por Jorge_Mota; 08/02/2005 a las 12:04 |
| ||||
HOLA... muchas gracias!! perodon por la ignorancia, pero un SP puede llamarse dentro de un cursor? Es que tengo un buen codigo de un cursor y en una parte debo realizar un insert a una tabla y ahì debo poner el exec SQLDinamico 'tabla','Top 100 ',' where vigor =0 order by id_linea','*' Saludos y muchìsimas gracias por el sp....:) |
| ||||
si creo que si, deberia dejarte, con insert into table exec SQLDinamico 'tbl_asegs_humano','Top 100 ',' where vigor =0 order by id_linea','*' prueba a ver, por que nunca he usado eso :p Saludos |