Le Query le compilo con sql non in modo automatico.
I comandi più semplici li riesco ad usare.
MA sono giunto ad un punto morto.
Vorrei fare in modo che se scelgo il valore "A" di un campo "ID", mi esegue determinati calcoli,
mentre se scelgo il valore "B" della stessa tabella, mi esegue calcoli differenti.
Ora i calcoli direttamente inseriti in due query differenti funzionano e sono corretti.
Sto cercando il modo di riunirli però in un'unica query, e pensavo di usare il comando CASE.
Ma forse sto sbagliando, perchè mi sembra di intuire che CASE restiuisce un campo LONGVARCHAR, per cui SQL mi dà errore perchè dice :
Stato SQL: S1000
Codice di errore: -216
Tipo di parametro irrisolto come risultato di CASE quando il tipo di operandi sono NUMERIC e LONGVARCHAR in statement [SELECT *,
Se così fosse, esiste un modo per far sì che date due righe diverse nella stessa tabella, SQL usa i dati di tali righe in operazioni differenti, relative a differenti ID, restituendomi i risultati nella stessa tabella?
questo è il codice:
Codice: Seleziona tutto
SELECT *,
CASE ("Tipa"."Codice")
WHEN '1' THEN "Quantità"."Quantità01V" * "Tipa"."Densità2" //VolumeAlcool
WHEN '2' THEN '0'
END
AS "cicc"
FROM "Estratti"
LEFT OUTER JOIN "VETMPS" AS "PesoSecco" ON "Estratti"."ID_Estratto" = "PesoSecco"."ID_Estratto"
LEFT OUTER JOIN "Tipo_Estratto" AS "Tipa" ON "Estratti"."Tipo" = "Tipa"."ID_TipoEstratto"
LEFT OUTER JOIN "VETMPF_q" AS "Quantità" ON "Estratti"."ID_Estratto" = "Quantità"."ID_Estratto"
WHERE "Tipo" = 'TM70'
Editato: Codifica aggiunta (Admin) |