diciamo che devo aggiungere il campo scadenza3 e quindi passare da
fatt. | scadenza1 | scadenza2 |
01 . | 1/12/2016 | 3/12/2016 |
02 . | 2/12/2016 | 4/12/2016 |
a
fatt. | scadenza1 | scadenza2 | scadenza3
01 . | 1/12/2016 | 3/12/2016 | 10/12/2016
02 . | 2/12/2016 | 4/12/2016 | 9/12/2016
e vorrei avere questo risultato:
01 | 1/12/2016
02 | 2/12/2016
01 | 3/12/2016
02 | 4/12/2016
02 | 9/12/2016
01 |10/12/2016
l'sql è:
codice:
sql = "SELECT * FROM ( "
sql = sql & " select '1' as QualeScadenza, scadenza1 AS ScadenzaX, null as scadenza2, null as scadenza3 from GestioneFattureAcquisto WHERE scadenza1 IS NOT NULL "
sql = sql & " union all select '2' as QualeScadenza, null as scadenza1, null as scadenza3, scadenza2 AS ScadenzaX from GestioneFattureAcquisto WHERE scadenza2 IS NOT NULL "
sql = sql & " union all select '3' as QualeScadenza, null as scadenza1, null as scadenza2, scadenza3 AS ScadenzaX from GestioneFattureAcquisto WHERE scadenza3 IS NOT NULL "
sql = sql & " ) AS TabX ORDER BY ScadenzaX"
i campi scadenza1, scadenza2 e scadeenza3 sono campi data
e l'errore che ho è:
Microsoft OLE DB Provider for ODBC Driverserror '80040e07'
[Microsoft][Driver ODBC Microsoft Access] Tipi di dati non corrispondenti nell'espressione criterio.
se stampo l'sql a schermo ho
SELECT * FROM ( select '1' as QualeScadenza, scadenza1 AS ScadenzaX, null as scadenza2, null as scadenza3 from GestioneFattureAcquisto WHERE scadenza1 IS NOT NULL union all select '2' as QualeScadenza, null as scadenza1, null as scadenza3, scadenza2 AS ScadenzaX from GestioneFattureAcquisto WHERE scadenza2 IS NOT NULL union all select '3' as QualeScadenza, null as scadenza1, null as scadenza2, scadenza3 AS ScadenzaX from GestioneFattureAcquisto WHERE scadenza3 IS NOT NULL ) AS TabX ORDER BY ScadenzaX
insomma, mi sto perdendo 