SQL-команда для обновления уровней и количества повторного заказа на основе проданного запаса с года на дату или между двумя датами - PullRequest
0 голосов
/ 15 февраля 2019

Я попытался добавить следующее в свою Утилиту базы данных в IQ Retail, но она не сработала.

update Stock
set MIN_LVL=UnitsYearToDate/5
set ORD_QUANT=UnitsYearToDate/5*3
where (only using one of the following)
REGULAR_SU='xxx'
or
SUBDEPARTM='xxx'
or
CODE between 'xxx' and 'xxx'

Я получаю эту ошибку

"Ошибка DBISAM Engine #11949 Ошибка синтаксического анализа SQL - ожидаемый конец оператора, но он найден установленным в операторе UPDATE SQL в строке 3, столбец 1 "

У меня нет знаний по программированию, я просто пытаюсь помочь себе из-за удаленногоместо нахождения.Буду признателен за любые советы о том, как обновить минимальные уровни заказов и объемы заказов в определенных партиях для примерно 12000 наименований.

Я использую утилиту упакованных баз данных в программном обеспечении IQ Retail.

Ответы [ 2 ]

0 голосов
/ 15 февраля 2019

Ваш синтаксис работает.Несколько SET должны быть разделены запятой:

update Stock
set MIN_LVL=UnitsYearToDate/5, ORD_QUANT=UnitsYearToDate/5*3
where 
REGULAR_SU='xxx'
or
SUBDEPARTM='xxx'
or
CODE between 'xxx' and 'xxx'
0 голосов
/ 15 февраля 2019

Попробуйте ниже - вам не нужно определять набор несколько раз, просто используйте один набор и определите несколько столбцов, используя запятую (,)

update Stock set MIN_LVL=UnitsYearToDate/5,ORD_QUANT=UnitsYearToDate/5*3 
where REGULAR_SU='xxx' or SUBDEPARTM='xxx' or CODE between 'xxx' and 'xxx'
...