Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/03/2013, 10:32
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 9 meses
Puntos: 774
Respuesta: Procedimiento o Funcion?

digamos que simpre va a ser FA001,FA010,FA100 hasta FA999 right?

pues podemos hacerlo asi:
Código SQL:
Ver original
  1. CREATE TABLE #temp
  2. (
  3. valor VARCHAR(20)
  4. )
  5.  
  6. INSERT INTO #temp VALUES ('FA001')
  7. INSERT INTO #temp VALUES ('FA002')
  8. INSERT INTO #temp VALUES ('FA003')
  9. INSERT INTO #temp VALUES ('FA004')
  10. INSERT INTO #temp VALUES ('FA005')
  11. INSERT INTO #temp VALUES ('FA009')
  12. INSERT INTO #temp VALUES ('FA099')
  13.  
  14.  
  15. SELECT
  16. 'FA' +
  17. REPLICATE('0',3-
  18. len(
  19. CONVERT(VARCHAR(20),
  20. MAX(CONVERT(INT,SUBSTRING(valor,CHARINDEX('0',valor,1),len(valor))))+1
  21. )
  22. )) +
  23. CONVERT(VARCHAR(20),
  24. MAX(CONVERT(INT,SUBSTRING(valor,CHARINDEX('0',valor,1),len(valor))))+1
  25. )
  26. FROM #temp


en procedure o funcion ya depende para que lo vas a usar :)
saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me