Здравствуйте! Есть 2 таблицы пользователи и приглашения, в таблице приглашений хранится кто пригласил определенного юзера, если пришел сам то NULL. Причем пытаюсь посмотреть за определенный период времени.
Но проблема именно с опеределенным промежутком времени т.к. всегда возвращается null при выводе данных.
То есть у меня выводятся пользователи за весь промежуток времени, уж не знаю что придумать.
Структура:
--
-- Структура таблицы `inviteds`
--
CREATE TABLE `inviteds` (
`id` int(10) UNSIGNED NOT NULL,
`user_id` int(11) NOT NULL,
`referer` int(11) DEFAULT NULL,
`first` int(11) NOT NULL DEFAULT '0',
`second` int(11) NOT NULL DEFAULT '0',
`third` int(11) NOT NULL DEFAULT '0',
`first_earn` double NOT NULL DEFAULT '0',
`first_gth_earn` double NOT NULL DEFAULT '0',
`second_earn` double NOT NULL DEFAULT '0',
`second_gth_earn` double NOT NULL DEFAULT '0',
`third_earn` double NOT NULL DEFAULT '0',
`third_gth_earn` double NOT NULL DEFAULT '0',
`created_at` timestamp NULL DEFAULT NULL,
`updated_at` timestamp NULL DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
-- --------------------------------------------------------
--
-- Структура таблицы `users`
--
CREATE TABLE `users` (
`id` int(10) UNSIGNED NOT NULL,
`name` varchar(190) COLLATE utf8mb4_unicode_ci NOT NULL,
`email` varchar(190) COLLATE utf8mb4_unicode_ci NOT NULL,
`token` varchar(190) COLLATE utf8mb4_unicode_ci NOT NULL,
`balance` double NOT NULL DEFAULT '0',
`tokens` decimal(8,2) NOT NULL DEFAULT '0.00',
`role` int(11) NOT NULL DEFAULT '0',
`password` varchar(190) COLLATE utf8mb4_unicode_ci NOT NULL,
`cheater` int(11) NOT NULL DEFAULT '0',
`banned` int(11) DEFAULT NULL,
`active` int(11) NOT NULL DEFAULT '0',
`ip` varchar(190) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`code` varchar(190) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`remember_token` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`created_at` timestamp NULL DEFAULT NULL,
`updated_at` timestamp NULL DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
Сам запрос:
SELECT *
FROM `inviteds`
LEFT JOIN `users` AS `refererJoin`
ON `referer` = `refererJoin`.`id`
AND `refererJoin`.`active` = 1
AND `refererJoin`.`banned` = 0
LEFT JOIN `users` AS `userJoin`
ON `user_id` = `userJoin`.`id`
AND `userJoin`.`active` = 1
AND `userJoin`.`banned` = 0
AND `userJoin`.`created_at` > '2020-02-01 00:00:00'
AND `userJoin`.`created_at` < '2020-03-01 00:00:00'
WHERE `referer` IS NOT NULL