Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Обработка на отрицателни стойности с sql

Изглежда не получавате много отговори - така че ето нещо, ако не получите правилното „как да го направите в чист SQL“. Игнорирайте това решение, ако има нещо SQLish - това е просто защитно кодиране, а не елегантно.

Ако искате да получите сбор от всички данни със същия сезон, защо да изтривате дублиращи се записи - просто го извадете навън, стартирайте цикъл foreach, сумирайте всички данни със същата стойност на сезона, актуализирайте таблицата с правилните стойности и изтрийте ненужните записи. Ето един от начините да го направите (псевдокод):

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Неуспешно влизане за потребител „DOMAIN\MACHINENAME$“

  2. Какви са различните начини за вмъкване на данни в таблицата на SQL Server - SQL Server / TSQL урок, част 100

  3. Microsoft SQL Server 2008 Management Studio - Проблем със свързване/сървър/екземпляр

  4. Какви са предимствата от използването на синтаксиса на конструктора на редове в оператор за вмъкване на T-Sql?

  5. Как да инсталирате sqlcmd &bcp на Ubuntu