sql >> Databasteknik >  >> RDS >> Sqlserver

Hantera negativa värden med sql

Du verkar inte få många svar - så här är något om du inte får rätt "hur man gör det i ren SQL". Ignorera den här lösningen om det finns något SQLish - det är bara en defensiv kodning, inte elegant.

Om du vill få en summa av all data med samma säsong varför ta bort dubbletter av poster - bara ta bort det, kör en föreach loop, summera all data med samma säsongsvärde, uppdatera tabellen med rätt värden och ta bort onödiga poster. Här är ett av sätten att göra det (pseudokod):

productsArray = SELECT * FROM products
processed = array (associative)
foreach product in productsArray:
  if product[season] not in processed:
    processed[season] = product[quantity]
    UPDATE products SET quantity = processed[season] WHERE id = product[id]
  else:
    processed[season] = processed[season] + product[quantity]
    DELETE FROM products WHERE id = product[id]


  1. SUM() Funktion i MySQL

  2. Kan inte infoga grekiska tecken korrekt i mysql-databasen

  3. I SQL Server, hur genererar jag en CREATE TABLE-sats för en given tabell?

  4. Uppdatera med parameter med hjälp av room persistent bibliotek