Ciao a tutti sto sviluppando in sql server 2005 questa select con cui devo ottenere
la seguente situazione:
es. ROSSI MARIO
se il campo NOME DENOMINAZIONE ha come stringa ROSSI MARIO voglio ottenere solo ROSSI M
se invece ha un nome tipo DE ROSSI MARIO o DI ROSSI MARIO
devo ottenere DE ROSSI M
MI AIUTATE? QUI SOTTO C'è LA SELECT CHE HO FATTO MA NON FUNZIONA SUL DE o DI
codice:SELECT [NOME DENOMINAZIONE], CASE LEFT(SUBSTRING(FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE], 1,NULLIF(CHARINDEX(' ', FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE])+1,-1)),3) WHEN 'DE ' THEN SUBSTRING(FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE],1 ,LEN(NULLIF(CHARINDEX(' ', FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE])-1,-1))+2) WHEN 'DI ' THEN SUBSTRING(FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE], 1,NULLIF(CHARINDEX(' ', FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE])-1,-1)) WHEN 'DEL' THEN SUBSTRING(FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE], 1,NULLIF(CHARINDEX(' ', FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE])-1,-1)) WHEN 'LO ' THEN SUBSTRING(FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE], 1,NULLIF(CHARINDEX(' ', FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE])-1,-1)) WHEN 'LA ' THEN SUBSTRING(FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE], 1,NULLIF(CHARINDEX(' ', FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE])-1,-1)) ELSE SUBSTRING(FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE], 1,NULLIF(CHARINDEX(' ', FLUSSI.dbo.BONIFICI_TEMPORARY.[NOME DENOMINAZIONE])+1,-1)) END AS COGNOME_IN FROM FLUSSI.dbo.BONIFICI_TEMPORARY WHERE FLUSSI.dbo.BONIFICI_TEMPORARY.TROVATI IS NULL

Rispondi quotando