Форум программистов, компьютерный форум, киберфорум
PHP: Laravel
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
1

Laravel 5.0. Выбрать одно случайное значение

07.11.2016, 13:00. Показов 873. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
есть такой запрос в БД

PHP
1
2
3
        $array_images  = DB::table('photo')
            ->whereIn('photo_symbol_id', $array_symbols_id)
            ->lists('photo_src', 'photo_symbol_id');
дело в том, что у нескольких элементов в БД может быть один и тот же связный элемент. нужно выбрать одно случайное значение запросом
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.11.2016, 13:00
Ответы с готовыми решениями:

Как выбрать одно случайное слово?
Есть 10 слов, из них выбираеться одно случайное, в нем с первой по последнюю букву делают...

Как выбрать из текста числа и оставить одно случайное?
как выбрать из текста числа и оставить одно случайное? response: { count: 14, items: }

Как считать вероятность что одно случайное значение больше другого?
Пусть будет первый генератор случайных чисел с нормальным распределением N(m1,s1), и второй...

Выбрать случайное значение из Enum
Всем привет Есть enum Animals { Cat, Dog, Horse }

6
165 / 150 / 58
Регистрация: 15.06.2013
Сообщений: 1,107
10.11.2016, 10:57 2
Я так понимаю что photo_symbol_id может повторяться и в этом поле содержится идентификатор поля другой таблицы? Я думаю что тут стоит организовать отношения. А потом брать случайный элемент.
0
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
10.11.2016, 11:53  [ТС] 3
MadHatter, нет, не повторяется. а вот в array_symbol_id может быть массив из повторяющихся id
0
165 / 150 / 58
Регистрация: 15.06.2013
Сообщений: 1,107
10.11.2016, 18:43 4
PHP
1
$array_symbols_id = array_unique($array_symbols_id);
0
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
10.11.2016, 18:46  [ТС] 5
MadHatter, неее, если повторяются - то это норма)
0
165 / 150 / 58
Регистрация: 15.06.2013
Сообщений: 1,107
10.11.2016, 20:15 6
Тогда я как-то не понимаю сути. Можно пример?
0
25 / 25 / 11
Регистрация: 13.12.2011
Сообщений: 818
15.11.2016, 16:41  [ТС] 7
MadHatter,

есть текстовый инпут в который вводится любой текст, далее строка разбивается посимвольно. каждый символ имеет свой ID. например при вводе в инпут текста "фыв!"

входной массив $array_symbols_id выглядит так

PHP
1
2
3
4
5
6
array:4 [▼
  0 => "21"
  1 => "28"
  2 => "3"
  3 => "33"
]
далее таким образом из БД выбираются нужные изображения - соотвествующие этим символам

PHP
1
2
3
        $array_images  = DB::table('photo')
            ->whereIn('photo_symbol_id', $array_symbols_id)
            ->lists('photo_src', 'photo_symbol_id');
допустим у меня есть символ ! (восклицательный знак). Я загружаю в таблицу фото и устанавливаю связь, что это фото связано с символом ! имеющим ID 33.

пока такое фото одно в таблице все нормально, оно и будет всегда выбираться. Проблема наступает тогда, когда я загружу еще несколько фото восклицательных знаков. т.е. при вводе фыв! я буду всегда на место восклицательного знака получать последнее загруженное фото, а мне нужно выбрать случайное значение из всех фото, связных с символом !

Добавлено через 52 минуты
достаточно было добавить

PHP
1
2
3
4
5
        $array_images  = DB::table('photo')
            ->whereIn('photo_symbol_id', $array_symbols_id)
            ->where('photo_moderation_id','2')
            ->orderByRaw('RAND()')
            ->lists('photo_src', 'photo_symbol_id');
0
15.11.2016, 16:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.11.2016, 16:41
Помогаю со студенческими работами здесь

Как выбрать только одно значение используя LINQ?
Здравствуйте. Есть у меня вот такой вопрос, допустим есть класс public Class() { public...

В Документе при выборе данных из справочника выбрать только одно значение
Есть документ поступление товаров, в котором есть реквизит контрагент(тип....

Как выбрать одно значение из таблицы, когда LIMIT используется для постраничного вывода
Собственно вопрос. Как выбрать только 1но значение из таблицы. $query = $mysqli->query("SELECT...

Генерируются всего одно случайное число, а не матрица
почему генерируется тока одно число а не все которые я задаю 4 на 4 mout1 - Это RichTextBOx {...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru