powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Сделать запрос по результатам запроса
10 сообщений из 10, страница 1 из 1
Сделать запрос по результатам запроса
    #39226300
Делаю запрос нагрузки преподов:

Код: php
1.
2.
$string_query = "SELECT * FROM `calculationhours` ORDER by lector";
$result = mysqli_query( $link, $string_query );



Мне нужно потом часы каждого препода закинуть в отдельную вкладку экселя.
В связи с этим у меня два вопроса:
- можно ли сделать запрос к результату $result и вывести уникальный список всех преподов.
- потом я собираюсь по этому списку пробежаться и вывести часы каждого препода, сделав опять-таки запрос с конкретной фамилией к результатам первого запроса $result . Можно ли так сделать (и как =) )

Вроде попадалась, что можно (но мне не было нужно). гугление дает только запрос внутри запроса.
...
Рейтинг: 0 / 0
Сделать запрос по результатам запроса
    #39226301
я могу конечно повесить флаг, и отслеживать появление новой фамилии. Но там у меня в реале сложнее выборка, запутался я в этих флагах на башнях.
...
Рейтинг: 0 / 0
Сделать запрос по результатам запроса
    #39226319
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Удав Анакондаможно ли сделать запрос к результату $result результат - на стороне клиента, как ты собрался делать к нему запрос? запросы же сервер выполняет...
может, сразу выполнить нормальный запрос? с группировкой по лекторам и подсчётом часов.
...
Рейтинг: 0 / 0
Сделать запрос по результатам запроса
    #39226669
Нет, мне подсчет часов не нужен. Гроуп помешает, он же суммирует. Мне, по сути, нужно просто отдельные строки раскидать по разным вкладкам.

Строки определенного препода длятся на три вида - штат, совместительство, почасовые. Полученные группы нужно разбить на строки с очными и заочными группами. Полученные подгруппы делят на бюджет и договор. Т.е., например, в худшем случае создается аж 12 отдельных групп - и, соответственно, я их закидаю в 12 вкладок экселя.

Все соответсвующие поля ( штатность, очность, бюджет ) есть, сортировка нужная сделана. Такто на вид простая задача, но чо то муторновато с флагами )
...
Рейтинг: 0 / 0
Сделать запрос по результатам запроса
    #39226672
я конечно могу сначала сделать запрос на список уникальных преподов (например, 20 штук), потом с его помощью пробежать тройной цикл , итого наверно сделать 20*3*2*2 = 320 запросов в базу, но что-то мне подсказывает, что нехорошо так :)
...
Рейтинг: 0 / 0
Сделать запрос по результатам запроса
    #39226874
Лан наверно создам ассоциативный массив (ключ - препод) , и туда загружу выборку. Потом буду пробегаться по этому массиву массивов. Лисапед, короче
...
Рейтинг: 0 / 0
Сделать запрос по результатам запроса
    #39227173
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Удав Анакондая конечно могу сначала сделать запрос на список уникальных преподов (например, 20 штук), потом с его помощью пробежать тройной цикл , итого наверно сделать 20*3*2*2 = 320 запросов в базу, но что-то мне подсказывает, что нехорошо так :)начешуя 320 запросов?
сделай запрос на преподов + запрос на всё
потом проходи по списку преподов и раскидывай данные из второго списка куда надо
...
Рейтинг: 0 / 0
Сделать запрос по результатам запроса
    #39227210
tanglirпотом проходи по списку преподов и раскидывай данные из второго списка куда надо
А как это сделать, непонятно... Вот допустим, такой результат
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
1 Иванов алгебра 	Штат Очка Бюджет 	120
2 Иванов геометрия 	Штат Очка Бюджет 	100

3 Иванов черчение 	Штат Очка Договор 	60
4 Иванов рисование 	Штат Очка Договор 	40

5 Иванов матан	 	Совм Очка Бюджет 	50
6 Иванов функан	 	Совм Очка Бюджет 	70

7 Иванов логика	 	Совм Очка Договор 	40

8 Иванов алгебра 	Совм ЗаОч Бюджет 	20

9 Иванов геометрия 	Совм ЗаОч Договор 	10


Это нужно раскидать в 6 разных вкладок... А с обычным массивом
Код: php
1.
2.
3.
4.
5.
$string_query = "SELECT * FROM `calculationhours` ORDER by lector";
$result = mysqli_query( $link, $string_query );	
while ($line = mysqli_fetch_ASSOC($result)) {
   ...
}


думаю, неудобно работать будет...По-моему, без вспомогательного массива не обойтись...
...
Рейтинг: 0 / 0
Сделать запрос по результатам запроса
    #39227215
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Удав АнакондаЭто нужно раскидать в 6 разных вкладок...
Запрос должен вернуть все данные одним массивом. А клиент - разложить их по вкладкам.
Чтобы клиенту было проще, нужно организовать "удобную" сортировку данных, чтобы клиент имел возможность обработки данных потоком.
...
Рейтинг: 0 / 0
Сделать запрос по результатам запроса
    #39227226
Akina, так то да, сделал, типа
Код: php
1.
$string_query = "SELECT * FROM `calculationhours` ORDER by lector, Штат, Очка, Бюджет ";


ладно, вроде я додумался, как одним флагом обойтись )
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Сделать запрос по результатам запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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