Обновление итогов по количеству просмотров идентификатора в базе данных - PullRequest
3 голосов
/ 13 февраля 2020

Итак, я хочу убедиться, что в моей табло ritten, когда идентификатор id 20 появляется в 4 раза, а ritten_total меняется на 4, я пробовал это:

UPDATE ritten, users
SET ritten_totaal = ritten_totaal + 1;

Я также пытался суммировать идентификатор позади ritten_totaal =, который привел к ошибке

У меня есть две таблицы, одна из которых называется ritten, одна называется пользователями, они связаны не с идентификатором, а с rit_ cc Теперь мой желаемый результат заключается в том, что когда я добавляю новый идентификатор в идентификатор пользователя, что общее количество ritten_total увеличивается

Пример данных (не знаю, должен ли я делать это так, как это):

ritten:

id       ritten_totaal         rit_cc 
64       1                     GeJo 
65       1                     PeT2 

пользователей :

id    rit_cc 
4     PeT2 
20    GeJo
SELECT ritten_totaal, u.id 
FROM ritten r 
JOIN users u ON r.rit_cc = u.rit_cc
ritten_totaal id
1             20
1             20
1             21
1             18
1             20
1             20
1             4
1             4
1             19
1             19

Таким образом, каждые 20 идентификаторов в этом списке должны увеличивать значение ritten_totaal, в этом списке 4 20 с, поэтому ritten_totaal должен ОБНОВИТЬ до 4., когда добавляется другой rit, а затем тот же идентификатор в ritten должен увеличиться до 5

SELECT COUNT(ritten_totaal)ritten_totaal, u.id
FROM ritten r 
JOIN users u 
ON r.rit_cc = u.rit_cc 
WHERE u.id = 20;
ritten_totaal id
4             20

Что-то вроде этого мне нужно обновить для каждого идентификатора

1 Ответ

1 голос
/ 13 февраля 2020

Я думаю, что вы хотите:

UPDATE users u
    SET ritten_totaal = (SELECT COUNT(*)
                         FROM ritten r
                         WHERE r.rit_cc = u.rit_cc
                        );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...