sql >> Database teknologi >  >> RDS >> Sqlserver

Håndtering af negative værdier med sql

Du ser ikke ud til at få mange svar - så her er noget, hvis du ikke får den rigtige 'how-to do it in ren SQL'. Ignorer denne løsning, hvis der er noget SQLish - det er bare en defensiv kodning, ikke elegant.

Hvis du ønsker at få en sum af alle data med samme sæson, hvorfor slette duplikerede poster - bare få det udenfor, køre en foreach loop, summere alle data med samme sæsonværdi, opdatere tabellen med de rigtige værdier og slette unødvendige poster. Her er en af ​​måderne at gøre det på (pseudokode):

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. Er PDO-udsagn automatisk escaped?

  2. Tabelstruktur for Geo Spatial Data

  3. Befolkning af træelement med rekordgruppe i Oracle-formularer

  4. Hvordan kører man et specifikt script efter tilslutning til oracle ved hjælp af skinner?