Ciao a tutti,
ho un problema con i campi di tipo data in una query in SQL server 2008, praticamente ho una tabella "listino di acquisto" dove ci sono per ogni articolo i vari listini associati e le date di validità, per esempio:
Codart datainizio datafine prezzo
Art1 2011-07-01 00:00:00.000 2012-06-30 00:00:00.000 5.55
Art1 2010-07-01 00:00:00.000 2011-06-30 00:00:00.000 12.2
Art1 2012-07-01 00:00:00.000 2013-06-30 00:00:00.000 10
Art1 2010-07-01 00:00:00.000 2011-06-30 00:00:00.000 12.2
Art2 2011-07-01 00:00:00.000 2012-06-30 00:00:00.000 5.55
Art2 2010-07-01 00:00:00.000 2011-06-30 00:00:00.000 12.2
Art2 2012-07-01 00:00:00.000 2013-06-30 00:00:00.000 10
In funzione di un valore di un'altro campo (TIPO) presente in un'altra tabella (ANAGRART) devo recuperare il codice articolo e la datainizio, ecco la select:
SELECT LI10_LISTARTIC.LI10_CODART,
CASE WHEN SUBSTRING(ANAGRART.TIPO, 1, 1) = 'N'
THEN ??????????????
ELSE MAX(LI10_LISTARTIC.LI10_DATAINIZIOVAL)
END AS DATALISTACQ
Se il campo TIPO è <> da "N" prendo il Max della datinizio (2012-07-01) e funziona, il problema è quando TIPO = "N" dovrei prendere la datainizio maggiore dell'anno in corso cioè 2011-07-01, ma non riesco!!!! Ho provato ad utilizzare diverse funzioni per le date ma nulla da fare!!!!![]()
Qualcuno mi può aiutare?!
Grazie
Ciao

Rispondi quotando