Додавання за допомогою sql

складання за допомогою SQL

Допоможіть будь ласка. У SQL я як корова на льоду.
Потрібно скласти значення ОДНІЄЇ ЗАПИСИ полів Сумма1 і Сумма2 в Таблиці 1 з подальшою підстановкою отриманого значення в поле ПІДСУМОК Таблиці 2.

Справа в тому, що SUM тільки складає все значення стовпця, а мені потрібно тільки два значення запису.

Перечитав 2 рази. Не понял нічого, тільки про корову небагато. Може ще почитати? 8-)

insert into Таблиця 2 (ПІДСУМОК, еще_что-то_еслі есть_)
select Сумма1 + Сумма2, еще_что-то_еслі есть_
from Таблиця 1
where моє умова визначення ОДНІЄЇ ЗАПИСИ

Таблиця 1:

номер # XA0; ПІБ # XA0; # XA0; # XA0; # XA0; # XA0; Сумма1 # XA0; Сумма2
. # XA0; # XA0; # XA0; # XA0; # XA0; # XA0 ;. # XA0; # XA0; # XA0; # XA0; # XA0; # XA0 ;.
103 # XA0; # XA0; Іванов П.К. # XA0; # XA0; 10000 # XA0; 345
. # XA0; # XA0; # XA0; # XA0; # XA0; # XA0 ;. # XA0; # XA0; # XA0; # XA0; # XA0; # XA0 ;.

Таблиця 2:

номер # XA0; ПІБ # XA0; # XA0; # XA0; # XA0; # XA0; підсумок
. # XA0; # XA0; # XA0; # XA0; # XA0; # XA0 ;. # XA0; # XA0; # XA0; # XA0; # XA0; # XA0;
103 # XA0; # XA0; Іванов П.К. # XA0; ___
. # XA0; # XA0; # XA0; # XA0; # XA0; # XA0 ;. # XA0; # XA0; # XA0; # XA0; # XA0;

Як скласти дві суми з Т1 і підставити значення в ПІДСУМОК Т2.

Навіщо йому твоє умова. )))

Ну, мені не потрібні, а значить не всім. )

ПИТАННЯ:
Чи можна об'еддінять два символьних значення. Просто я зараз спробував
where ім'я + "" + прізвище = "Вася Деточкин"
не працює, тоді як
where ім'я = "вася" and прізвище = "Деточкин" працює.
----------------------


> Чи можна об'еддінять два символьних значення
- можна, можливо.


> Чи можна об'еддінять два символьних значення

можна, можливо. є в довіднику по SQL.

Російські назви полів треба вказувати в лапках
І прислухайтеся до [5] (з приводу структури)

у мене в латиниці все. Просто по-російськи писав для полегшення пояснень

Давай реальний запит

UPDATE TBL_SECOND
set Total =
SELECT DISTINCT sum1 + sum2 # XA0; from TBL_FIRST
where tbl_second.id = "103" and tbl_first.id = "103"

UPDATE TBL_SECOND
set Total = (SELECT DISTINCT sum1 + sum2 # XA0; from TBL_FIRST where tbl_first.id = "103")
where tbl_second.id = "103"

UPDATE TBL_SECOND S
set S.Total = SELECT F.sum1 + F.sum2 # XA0; from TBL_FIRST F
where (S.id = F.id) and (F.ID = 103)

Почитайте заодно про параметричні запити

пише:
"В операції дожен використовуватися оновлюваний запит."
Якийсь косяк з UPDATE?
SELECT DISTINCT sum1 + sum2 # XA0; from TBL_FIRST where tbl_first.id = "103"
працює дивовижно!

А треба - "працює дивовижно".
: O)

Все розібрався. Виявляється все працює, але чомусь вилітає помилка
ADOQuery1: Command text doesn "t return a result set

Це якось пов'язано зі зв'язкою ADO + Access або що? Чи можна уникнути помилки?

запит не повертає рекордсет, перекинь його в ADOCommand. пов'язане природно з глюком в твоєму коді.

Ще б. Адже сам запит дивний. Особливо DISTINCT (поясни його сенс в даному контексті) і символьний ідентифікатор;)

Схожі статті