powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выборка значений, которых нет в другой таблице + доп. условие
3 сообщений из 3, страница 1 из 1
Выборка значений, которых нет в другой таблице + доп. условие
    #39725856
Victor256
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую. Есть 2 таблицы, в одной контент, в другой действие юзера: лайк (1)/дизлайк (-1).

Дампы:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
DROP TABLE IF EXISTS `items`;
CREATE TABLE `items` (
  `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
  `content` varchar(200) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `items` (`id`, `content`) VALUES
(50,	''),
(51,	''),
(52,	''),
(53,	''),
(54,	''),
(55,	''),
(56,	''),
(57,	''),
(58,	''),
(59,	''),
(60,	''),
(61,	''),
(62,	''),
(63,	'');

DROP TABLE IF EXISTS `reactions`;
CREATE TABLE `reactions` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `users_id` int(10) unsigned NOT NULL,
  `items_id` bigint(20) unsigned NOT NULL,
  `reaction` tinyint(4) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `users_id` (`users_id`),
  KEY `items_id` (`items_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `reactions` (`id`, `users_id`, `items_id`, `reaction`) VALUES
(2,	1,	61,	1),
(3,	2,	62,	1),
(4,	2,	55,	-1),
(5,	1,	60,	1),
(6,	1,	59,	-1),
(7,	1,	58,	-1),
(8,	1,	57,	1),
(9,	1,	56,	1),
(10,	1,	55,	-1);


Нужно что бы в выборку попали только те записи, на которые нет реакции пользователя с заданным users_id (например 1). Подскажите, каким запросом такое сделать?
...
Рейтинг: 0 / 0
Выборка значений, которых нет в другой таблице + доп. условие
    #39725865
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
SELECT i.*
FROM items i
LEFT JOIN reactions r
    ON i.id = r.items_id AND r.users_id = @id
WHERE r.items_id IS NULL
...
Рейтинг: 0 / 0
Выборка значений, которых нет в другой таблице + доп. условие
    #39725963
Victor256
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,
да, точно... Спасибо, заработался )
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Выборка значений, которых нет в другой таблице + доп. условие
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]