вывод данных
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 | миша | коля
...и т.д.
Народ подскажите как это можно организовать?Никак не могу догнать.Заранее спасибо
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, вот это мне и интересно самому как это сделать вообще
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` тоже производилась запись,и вообще реально ли это
5.
Марсель (16.01.2011 / 11:46)
вопрос в том откуда ты будешь брать запись для поля user2?)
и используй mysql_fetch_
assoc
mysql_fetch_array еще и численный массив выводит. А тебе он тут ненужен.
6.
Александр (16.01.2011 / 11:54)
ofroke, вот поэтому я и создал эту тему
Может есть какой то альтернативный вариант, чтобы произвести запись так как мне нужно.Хотя че то я сомневаюсь...
7.
Марсель (16.01.2011 / 11:58)
ты сам себя непонял.
Ты себе задай вопрос
Откуда мне брать запись для поля user2?
Добавлено через 00:33 сек.
Может поймешь))
8.
Александр (16.01.2011 / 12:01)
да я тебя понял))
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