Size: a a a

Laravel для начинающих

2020 March 30

ЕК

Егор Карась... in Laravel для начинающих
Не зарегистрировал провайдер. Мммать его.

15 минут голову ломал, написал и понял
источник

С

Сергей in Laravel для начинающих
Kaizoku
 $categories->keyBy('id') 
???
Спасибо. Не думал что с json это тоже работает, да и позабыл совсем.
источник

ЕК

Егор Карась... in Laravel для начинающих
Ребяты, помогайте
источник

ЕК

Егор Карась... in Laravel для начинающих
Забуксовал
источник

ЕК

Егор Карась... in Laravel для начинающих
Смотрите, есть табличка table, допустим, у неё есть форейн user_id. У таблички users есть колонка column

Есть массив пар "column_value => date(Y-m-d)"

Мне нужно выбрать из таблицы table все записи, у которых created_at = той дате из массив и юзер равен тому, у которого colum = column_value

Вопрос!

Как это сделать в идеале одним запросом
источник

ДТ

Дмитрий Тхоржевский... in Laravel для начинающих
Wherein
источник

ЕК

Егор Карась... in Laravel для начинающих
не-не, ты не понял немного

есть пара ключ-значение, несколько таких пар. Нужно выбрать такие строки таблицы table, где table.created_at = значение, а table.user_id.colume = ключ
источник

ДТ

Дмитрий Тхоржевский... in Laravel для начинающих
Ааа
источник

ДТ

Дмитрий Тхоржевский... in Laravel для начинающих
Ну тогда еще джоин
источник

ЕК

Егор Карась... in Laravel для начинающих
Да я и не могу понять, как бы исхитриться)
источник

АЗ

Алихан Закиров... in Laravel для начинающих
SELECT * FROM table WHERE column IN (SELECT any FROM table2) не катит?)
источник

АЗ

Алихан Закиров... in Laravel для начинающих
Вообще кажется да, тебе обычный джойн подойти должен
источник

ЕК

Егор Карась... in Laravel для начинающих
Алихан Закиров
SELECT * FROM table WHERE column IN (SELECT any FROM table2) не катит?)
select *
from table t
left join users u on u.id = t.user_id
where (t.created_at, u.column) IN (('2020-03-16 11:48:51', 'Б00019810'));
источник

ЕК

Егор Карась... in Laravel для начинающих
Да, всё проще гораздо оказалось, осталось запихать это в элоквент, но это мелочи
источник

АЗ

Алихан Закиров... in Laravel для начинающих
А прикольно. Я и забыл что так можно в in запихать 🤔
источник

АЗ

Алихан Закиров... in Laravel для начинающих
Егор Карась
select *
from table t
left join users u on u.id = t.user_id
where (t.created_at, u.column) IN (('2020-03-16 11:48:51', 'Б00019810'));
В интернетах пишут такой синтаксис не использует индексы. Чтоб использовало надо OR
источник

АЗ

Алихан Закиров... in Laravel для начинающих
источник

ЕК

Егор Карась... in Laravel для начинающих
Ужос.
источник

ЕК

Егор Карась... in Laravel для начинающих
Пока не принципиально, это отчёт, который смотреть будет 1 человек раз в 1 день, а там оптимизирую.
источник

ЕК

Егор Карась... in Laravel для начинающих
Лишь бы заработало пока.
источник