ciao,
io ho una tabella prezzi, relativametne semplice:
|id|idObj|qnt|prz|
dove, in base a quanti oggetti vengono acquistati, il prezzo cambia..
esempio dati:
la logica è: se cerco il prezzo per 110 oggetti, mi deve prendere la fascia prezzo 100, e non 150...Codice PHP:|1|1|50 |0.36|
|2|1|100|0.35|
|3|1|150|0.34|
|4|1|200|0.33|
|5|1|250|0.31|
la query di per sè lavora da dio così:
e fin qui siamo tutti contenti, quando non c'è il prezzo per quella quantità non piglia nienteCodice PHP:SELECT
prz
FROM
listino_prezzi
WHERE
idObj = '1'
AND qnt <= '110'
AND prz > '0'
ORDER BY
qnt ASC
![]()
ma vogliamo complicarci la vita?
nel caso in cui non c'è il prezzo per quella quantità, mi deve prendere il primo prezzo maggiore di zero dove la quantità è maggiore di 110...
io ho abbozzato una cosa del tipo
ma logicamente mi prende sempre la quantita maggiore (in questo caso 150), anche quando c'è il prezzo della 'subito minore'..Codice PHP:SELECT
prz
FROM
listino_prezzi
WHERE
quantita >= '110'
AND idObj = '1'
AND prz > 0
ORDER BY
qnt ASC
LIMIT 1
io dovrei fargli considerare, in poche parole, solo le fasce prezzo maggiori della quantità, tranna la prima più bassa della stessa.
c'è il modo di farlo in una query, o devo fare la prima e muovermi di conseguenza a seconda se fallisce o no?

Rispondi quotando