вывод данных

1. Александр (16.01.2011 / 11:13)
Добрый день всем!Столкнулся с небольшой проблемой, щас вкратце все объясню.К примеру есть таблица `users` с полями id,name,ball.В этой таблице хранятся 100 пользователей.Из этой таблицы необходимо вытащить только 16 пользователей, у которых поле `ball` имеет наибольшие значение и записать этих пользователей в другую таблицу,допустим таблица `users2`.Эта таблица имеет поля id,user_1,user_2.Вывод и запись должна производится следующим образом:
Допустим мы вытащили 16 пользователей (в порядке убывания по полю `ball`)
id |name|ball
7  |вася |123
52 |петя |110
21 |миша |50
19 |коля |26
...и т.д.
Теперь должна производится запись в таблицу `users2` вида:
id|user_1|user_2
1 | вася  | петя
2 | миша  | коля
...и т.д.
Народ подскажите как это можно организовать?Никак не могу догнать.Заранее спасибоsmile

2. Марсель (16.01.2011 / 11:24)
где ты петя коля возьмешь? =\\
--
по первому:
SELECT * FROM `users` WHERE `ball` > 0 ORDER BY `ball` ASC LIMIT 16

3. Александр (16.01.2011 / 11:28)
ofroke, вот это мне и интересно самому как это сделать вообщеsmile

4. Александр (16.01.2011 / 11:40)
Потому что вывод с базы будет вида:
...
while ($row = mysql_fetch_array($result) {
mysql_query("INSERT INTO `users2` SET `user1`='".$row["name"]."',`user2`='[b][color=#ff0000]???[/color][/b]';");
  }
...
Потому я хз как записать чтобы в поле `user2` тоже производилась запись,и вообще реально ли этоsmile

5. Марсель (16.01.2011 / 11:46)
вопрос в том откуда ты будешь брать запись для поля user2?)
и используй mysql_fetch_assoc
mysql_fetch_array еще и численный массив выводит. А тебе он тут ненужен.

6. Александр (16.01.2011 / 11:54)
ofroke, вот поэтому я и создал эту темуsmile Может есть какой то альтернативный вариант, чтобы произвести запись так как мне нужно.Хотя че то я сомневаюсь...

7. Марсель (16.01.2011 / 11:58)
D ты сам себя непонял.
Ты себе задай вопрос Откуда мне брать запись для поля user2?

Добавлено через 00:33 сек.
Может поймешь))

8. Александр (16.01.2011 / 12:01)
D да я тебя понял))

9. Александр (26.01.2011 / 02:19)
$i = 0;
$name1 = array();
$name2 = array();

while ( $row = mysql_fetch_array( $result ) ) {
   if ( ceil( ceil( $i/2 )-( $i/2 ) ) == 0 ) {
       $name1[] = $row['name'];
   }
   else {
       $name2[] = $row['name'];
   }
   $i++;
}

$i = 0;

for( $i = 0; $i <= 8; $i++ ) {
   mysql_query("INSERT INTO `users2` SET `user1`='".$name1[$i]."',`user2`='".$name2[$i]."';");
}
kak to tak

10. delete (26.01.2011 / 03:11)
не в тему но сервис полезный http://dbdsgnr.appspot.com/

Добавлено через 03:44 сек.
конструктор баз данных

URL: https://visavi.net/topics/17762