Sono interessato a creare un'istruzione case che estrae valori da due colonne diverse, una delle quali con un calcolo coinvolto. Non sono sicuro di come farlo funzionare, ma ti mostrerò quello che ho finora. (Ho una colonna che mostra il tipo di articolo, ad esempio articoli di ordine speciale, articoli fuori produzione e articoli normalmente in magazzino e la seconda colonna mostra la quantità a disposizione - quantità sugli ordini di vendita per determinare se l'articolo è disponibile). la mia richiestaMysql CASE statement multiple columns
5
A
risposta
8
Per questo tipo di richiesta è necessario riutilizzare il calcolo o utilizzare una sottoquery. Questo perché l'alias che si stanno dando il valore Instock
non è disponibile per l'utilizzo all'interno della lista di selezione:
SELECT ItemID,
ItemType,
Instock,
CASE
WHEN ItemType = 'SP/OR' THEN 'Special Order'
WHEN Instock < '1' THEN 'Out of Stock'
WHEN Instock > '0' THEN 'In Stock'
END AS "Stock"
FROM
(
select ItemID, ItemType, (QuantityOnHand - QuantityonSalesOrders) AS Instock
from peachtree
) p;
Oppure:
SELECT ItemID,
ItemType,
(QuantityOnHand - QuantityonSalesOrders) as Instock,
CASE
WHEN ItemType = 'SP/OR' THEN 'Special Order'
WHEN (QuantityOnHand - QuantityonSalesOrders) < '1' THEN 'Out of Stock'
WHEN (QuantityOnHand - QuantityonSalesOrders) > '0' THEN 'In Stock'
END AS "Stock"
FROM peachtree
Problemi correlati
- 1. MySQL Drop Multiple Columns
- 2. Rails validates_uniqueness_of across multiple columns with case insensitivity
- 3. SQL - CASE STATEMENT - WHEN statement AND statement
- 4. sqlalchemy filter multiple columns
- 5. DB2 CASE Statement
- 6. Dynamic LINQ GroupBy Multiple Columns
- 7. SQL ORDER BY multiple columns
- 8. Case Statement on INNER Join
- 9. Funzione database VS Case Statement
- 10. On Duplicate Key Update - Multiple Columns
- 11. Come inner inner join multiple columns?
- 12. Case statement rispetto a istruzioni codificate if
- 13. Case statement con condizionale nel server SQL
- 14. WHERE CASE WHEN statement with Exists
- 15. SQL CASE STATEMENT in COUNT CLAUSE
- 16. SQL: GROUP BY colonne multiple con istruzione CASE
- 17. Variabili multiple in Python 'with' statement
- 18. Multiple RowSideColor columns heatmap.2 dal pacchetto gplots
- 19. groupby multiple columns in una query F # 3.0
- 20. Rendi mysql case sensitive?
- 21. mysql - if value = 0 shorten where statement
- 22. PostgreSQL CASE ... END con condizioni multiple
- 23. SQL Case statement VS Union Tutte le prestazioni
- 24. String.Empty in Switch/case statement genera un errore del compilatore
- 25. MySQL Multiple Left Joins
- 26. MYSQL Stored Procedures If statement Problema
- 27. WHILE LOOP con IF STATEMENT MYSQL
- 28. Dichiarazione CASE MySQL e REGEXP
- 29. Mysql usa DESC nell'istruzione case
- 30. ricerca case-insensitive di MySQL?
Che cosa succede se la colonna case-based è utilizzata in una clausola WHERE ? Qualche modo per migliorare le sue prestazioni con un sacco di righe (ad esempio gli indici)? – watery
@watery Sì, l'utilizzo degli indici può aiutare con le prestazioni. Dovresti testarlo sul tuo sistema però. – Taryn