Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Динамичный вывод из БД
Форумы портала PHP.SU » » Работа с СУБД » Динамичный вывод из БД

Страниц (1): [1]
 

1. Itan - 22 Октября, 2011 - 18:03:15 - перейти к сообщению
Здравствуйте! Подскажите, пожалуйста, как сделать.

Есть таблица в БД:
CODE (htmlphp):
скопировать код в буфер обмена
  1. +++++++++++++
  2. + id + mark +
  3. +++++++++++++
  4. + 1  + 100  +
  5. +++++++++++++
  6. + 2  + 200  +
  7. +++++++++++++
  8. + 3  + 500  +
  9. +++++++++++++
  10. + 4  + 50   +
  11. +++++++++++++
  12. + 5  + 10   +
  13. +++++++++++++


Я беру из базы данные примерно так: Взять id, где mark > 60.
И у меня получается примерно такой вывод: 1,2,3.

Теперь мне нужно взять из другой таблицы записи с такими id.
И я по идее должен написать так: Взять text где id=1 и id=2 и id=3.

Вопрос: как составить последний запрос, где требуется взять text, чтобы он работал независимо от количество id. Т.е. их может быть не 3, а 50. Или 1000. Т.е. мне нужно уместить все в один запрос, и я не знаю, как это сделать. Хелп!
2. Данил_123 - 22 Октября, 2011 - 18:14:53 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $num=0;
  2. $query=mysql_query("SELECT * FROM `tablename` WHERE mark > 60");
  3. while($row=mysql_fetch_array($query));
  4. $num++;
  5. echo $num.$row['id']"."$row['mark'] '<br />';


Так? Внес поправки
3. DeepVarvar - 22 Октября, 2011 - 18:20:30 - перейти к сообщению
Данил_123 = жесть...
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT `text` FROM tbl2 WHERE id IN(1,3,45,6,4,8,77)

(Добавление)
Данил_123 пишет:
Кликай спасибо, будет приятно
Click yourself!!! Радость
4. Данил_123 - 22 Октября, 2011 - 18:24:57 - перейти к сообщению
DeepVarvar пишет:
Данил_123 = жесть...
К чему?
DeepVarvar пишет:
Данил_123 пишет:
Кликай спасибо, будет приятно
Click yourself!!!
Я как понял так и сделал
(Добавление)
Собрал вывод из базы
5. Champion - 22 Октября, 2011 - 18:27:28 - перейти к сообщению
Данил_123 пишет:
Кликай спасибо, будет приятно
Rjve приятно будет? Кликнувшему?)

Itan есть слово JOIN и есть слово SELECT FROM таблица2 WHERE id IN(SELECT id ... ваш запрос из 1 таблицы)
6. Данил_123 - 22 Октября, 2011 - 18:29:33 - перейти к сообщению
Что вы прицепились к подписи..
7. Давит - 22 Октября, 2011 - 18:29:37 - перейти к сообщению
CODE (SQL):
скопировать код в буфер обмена
  1. $sql = "SELECT  table_name1.mark,  table_name2.text
  2.                FROM ` table_name1`
  3.                INNER JOIN  table_name2
  4.                ON  table_name1.id = table_name2.id
  5.                 WHERE table_name1.mark > 60";



http://mysql[dot]ru/docs/man/JOIN[dot]html
8. Данил_123 - 22 Октября, 2011 - 18:29:54 - перейти к сообщению
Если помог кликнул, сложно?
9. DeepVarvar - 22 Октября, 2011 - 18:31:05 - перейти к сообщению
Данил_123 пишет:
Если помог кликнул, сложно?
Казнить нельзя помиловать
10. Данил_123 - 22 Октября, 2011 - 18:31:28 - перейти к сообщению
Вот что значит не читая вопрос ответить
11. Itan - 22 Октября, 2011 - 18:58:12 - перейти к сообщению
Спасибо! Попробую вариант с IN.

Посмотрите еще, пожалуйста, мою другую тему, тоже про БД.
http://forum.php.su/topic.php?fo...8&topic=4033

 

Powered by ExBB FM 1.0 RC1