Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP: базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Zoloto2010
0 / 0 / 1
Регистрация: 22.01.2016
Сообщений: 36
#1

SQL запрос не пойму

02.02.2016, 13:16. Просмотров 853. Ответов 14
Метки sql (Все метки)

я не много не пойму как можно вывести на экран все строки из таблици turnirs где `id` > 26

PHP
1
2
3
$Row = mysqli_fetch_assoc(mysqli_query($CONNECT, "SELECT `nplayer`,`tm`,`numpriz`,`playerlost`,`cash`,`name` FROM `turnirs` WHERE `id` > 26"));
 
print_r ($Row);
он показывает только где id=27 а есть еще 28 29 и т. д.
понимаю что надо сделать цикл а как не пойму
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.02.2016, 13:16
Ответы с готовыми решениями:

SQL Select, только не пойму как. H3LP
Еще раз здравствуйте. Только начинаю вникать в SQL - запросы и все такое....

Как в sql запрос вставить еще один запрос правильно?
Есть длинный запрос, в котором можете даже не разбираться если не хотите, но...

Переделать SQL запрос в запрос RedBeanPHP
В общем пишу поиск по таблице, есть готовое решение, но в SQL, возникла идея...

SQL запрос
Сегодня столкнулся вот с такой фишкой: ...

SQL запрос
Здравствуйте уважаемые! Как при помощи php выполнить файл запрос с разрешением...

14
quwy
Native x86
3338 / 2184 / 650
Регистрация: 13.02.2013
Сообщений: 7,239
02.02.2016, 13:38 #2
Лучший ответ Сообщение было отмечено Zoloto2010 как решение

Решение

Функция mysqli_fetch_assoc() возвращает одну запись. Хотите вывести все, вызывайте ее в цикле до тех пор, пока она не вернет FALSE:
PHP
1
2
3
4
$DataSet = mysqli_query($CONNECT, "SELECT `nplayer`,`tm`,`numpriz`,`playerlost`,`cash`,`name` FROM `turnirs` WHERE `id` > 26");
while(($Row = mysqli_fetch_assoc($DataSet)) !== FALSE) {
  print_r($Row);
}
2
Zoloto2010
0 / 0 / 1
Регистрация: 22.01.2016
Сообщений: 36
02.02.2016, 14:39  [ТС] #3
спасибо помогло только наверно здесь надо 1 = ставить с двумя у меня сервер падает
PHP
1
!== FALSE) {
0
Jodah
Эксперт PHP
2706 / 2378 / 1013
Регистрация: 01.08.2012
Сообщений: 8,405
02.02.2016, 14:42 #4
Zoloto2010, вряд ли из-за этого. Это стандартный синтаксис. Хотя я не совсем понимаю, зачем вообще писать !== false, если работает и без этого.
0
maruo
132 / 132 / 48
Регистрация: 26.04.2013
Сообщений: 1,355
02.02.2016, 20:16 #5
Zoloto2010, Не дергайте базу в циклах нИкогда! Эт на будущее
0
quwy
Native x86
3338 / 2184 / 650
Регистрация: 13.02.2013
Сообщений: 7,239
02.02.2016, 20:19 #6
Цитата Сообщение от maruo Посмотреть сообщение
Не дергайте базу в циклах нИкогда! Эт на будущее
Чего? А как еще?
0
maruo
132 / 132 / 48
Регистрация: 26.04.2013
Сообщений: 1,355
02.02.2016, 20:28 #7
quwy, Что еще? Без цикла нельзя сделать выборку нужного?
0
Пифагор
1186 / 989 / 515
Регистрация: 10.01.2015
Сообщений: 3,321
02.02.2016, 20:47 #8
Цитата Сообщение от maruo Посмотреть сообщение
Без цикла нельзя сделать выборку нужного?
можно, но только есть запрос вернет не более одной строки.
иначе все равно придется использовать цикл foreach() для mysqli_fetch_assoc().
для mysqli_fetch_array() нужен цикл while
например, так не нужен цикл:
SQL
1
SELECT `nplayer`,`tm`,`numpriz`,`playerlost`,`cash`,`name` FROM `turnirs` WHERE `id` = 1
а так нужен
SQL
1
SELECT `nplayer`,`tm`,`numpriz`,`playerlost`,`cash`,`name` FROM `turnirs` WHERE `id` > 26
при условии, что колво id не более 27)))
0
maruo
132 / 132 / 48
Регистрация: 26.04.2013
Сообщений: 1,355
02.02.2016, 20:50 #9
Пифагор, Даже есть более 27, тут цикл не нужен
Да и запросы в циклах намного медленнее и Используют ресурсы
0
Пифагор
1186 / 989 / 515
Регистрация: 10.01.2015
Сообщений: 3,321
02.02.2016, 20:51 #10
ну, возможно.
тогда, код в студию...
0
maruo
132 / 132 / 48
Регистрация: 26.04.2013
Сообщений: 1,355
02.02.2016, 20:52 #11
Пифагор, Да тут не о коде речь, код не нужен, вопроса то не было)
Я На будущее ТС посоветовал обходить запросы в циклах стороной и составлять запросы так что бы они не пригодились. Не мало зависит еще и структура БД. Если правильно составить БД никакой цикл не пригодится
0
Пифагор
1186 / 989 / 515
Регистрация: 10.01.2015
Сообщений: 3,321
02.02.2016, 20:55 #12
maruo, Вы сказали, что при любом результате запроса можно обойтись без цикла.
вот лично мне интересно как. поэтому прошу пример кода.
0
maruo
132 / 132 / 48
Регистрация: 26.04.2013
Сообщений: 1,355
02.02.2016, 20:57 #13
Пифагор, мы сейчас наверно думаем о разных вещах)
Я об этом
PHP
1
2
foreach(){
mysqli_query(.....................)}
0
Jodah
Эксперт PHP
2706 / 2378 / 1013
Регистрация: 01.08.2012
Сообщений: 8,405
02.02.2016, 21:02 #14
Цитата Сообщение от maruo Посмотреть сообщение
Zoloto2010, Не дергайте базу в циклах нИкогда! Эт на будущее
Пишите советы, относящиеся к теме, а то запутаете ТС и он решит, что ошибка в его коде.
0
quwy
Native x86
3338 / 2184 / 650
Регистрация: 13.02.2013
Сообщений: 7,239
03.02.2016, 16:45 #15
Цитата Сообщение от maruo Посмотреть сообщение
Я об этом
И что это за фигня? По чем у вас foreach()? Вы так ратуете за отсутствие цикла, что готовы вызывать в цикле mysqli_query()? Где логика?

Рекордсет -- это потенциально бесконечный набор строк, работать с ним нужно ТОЛЬКО в цикле, выбирающем строки по одной сверху вниз. Если SQL-запрос не ограничен жестко небольшим количеством записей при помощи WHERE или LIMIT, НИКОГДА не нужно высасывать его целиком при помощи mysqli_fetch_all() или подобных методов. Объем памяти не бесконечен и крайне редко нужно работать одновременно со всем рекордсетом. В 99% случаев работа ведется построчно и построчный fetch является самым оптимальным вариантом выборки.
1
03.02.2016, 16:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2016, 16:45

SQL запрос
всем привет! У меня есть форма, на ней 4 текстовых поля(Улица, Фамилия, Имя,...

SQL запрос
Народ, помогите, всю голову сломал уже.... Есть таблица: ID Name Ref-id и...

Запрос SQL
Не могу понять почему не записывает в таблицу сведения((( с БД соединяет,...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru