RND - SQL???

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
Boss IT
Обычный пользователь
Обычный пользователь
 
Сообщения: 62
Зарегистрирован: 01.07.2005 (Пт) 21:23
Откуда: Челябинск city

RND - SQL???

Сообщение Boss IT » 05.11.2005 (Сб) 20:14

Добрый день.
Интересует как можно перемешать все записи в таблице через SQL?
Вообщем чтобы они выводились каждый раз по RND...

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.11.2005 (Сб) 20:38

Интересно, зачем?..
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Boss IT
Обычный пользователь
Обычный пользователь
 
Сообщения: 62
Зарегистрирован: 01.07.2005 (Пт) 21:23
Откуда: Челябинск city

Сообщение Boss IT » 05.11.2005 (Сб) 20:54

GSerg писал(а):Интересно, зачем?..


Ну вообщем есть мой "конструктор тестов", который хранит вопросы естественно в БД. Так вот хотелось бы чтобы они каждый раз перемешивались, ну чтоб например студенты не запомнили номера вопросов и правильных ответов. Или мона как нибуть сделать это по другому?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.11.2005 (Сб) 20:58

Получаешь из базы в прямом порядке, перемешиваешь.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Boss IT
Обычный пользователь
Обычный пользователь
 
Сообщения: 62
Зарегистрирован: 01.07.2005 (Пт) 21:23
Откуда: Челябинск city

Сообщение Boss IT » 05.11.2005 (Сб) 20:58

GSerg писал(а):Получаешь из базы в прямом порядке, перемешиваешь.


А в БД перемешать нельзя?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.11.2005 (Сб) 21:00

Добавить временный столбец, заполнить его RND и отсортировать по нему?
А зачем?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Boss IT
Обычный пользователь
Обычный пользователь
 
Сообщения: 62
Зарегистрирован: 01.07.2005 (Пт) 21:23
Откуда: Челябинск city

Сообщение Boss IT » 05.11.2005 (Сб) 21:06

Добавить временный столбец, заполнить его RND и отсортировать по нему?


Хм... вариант. А как добавить/удалить столбец?

А зачем?

Прочти топик 2

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.11.2005 (Сб) 21:12

Второе "А зачем" относилось к методу реализации.
Зачем добавлять?
Потом руками заполнять. Зачем?
Легче на стороне приложения перемешать.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Boss IT
Обычный пользователь
Обычный пользователь
 
Сообщения: 62
Зарегистрирован: 01.07.2005 (Пт) 21:23
Откуда: Челябинск city

Сообщение Boss IT » 05.11.2005 (Сб) 21:18

GSerg писал(а):Второе "А зачем" относилось к методу реализации.
Зачем добавлять?
Потом руками заполнять. Зачем?
Легче на стороне приложения перемешать.


Все записи занести в массив, отвсортировать в нем (через rnd), затем забить обратно в таблицу в времменый столбец, и потом с него загружать вопросы. А ответы?
Ответ загружается зная id вопроса. С ними как быть?

Grimm
Новичок
Новичок
Аватара пользователя
 
Сообщения: 43
Зарегистрирован: 24.10.2005 (Пн) 0:17

Сообщение Grimm » 05.11.2005 (Сб) 21:28

для этого существую связи между таблицами или просто ключи
Я слишком рано стал ребенком

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.11.2005 (Сб) 21:28

А что, id вопроса каким-то образом меняется?
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Boss IT
Обычный пользователь
Обычный пользователь
 
Сообщения: 62
Зарегистрирован: 01.07.2005 (Пт) 21:23
Откуда: Челябинск city

Сообщение Boss IT » 05.11.2005 (Сб) 21:34

GSerg писал(а):А что, id вопроса каким-то образом меняется?

Естественно. смотри:

ID | Vopros
1 | Кто такой Путин
2 | Что такое VB

табл. Ответы
Vopros| Otvet
1| Президент России
1| Чувак из ГосДумы
1| Тайная личность


А если я сделаю по РНД, то придеться еще содавать временное поле под ID...Или нет?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.11.2005 (Сб) 21:35

"Если ты завязываешь логику на первичный ключ, ты сам себе злобный буратино" (c) alibek

Ключ-то не трогай. Не по нему сортируешь же.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Boss IT
Обычный пользователь
Обычный пользователь
 
Сообщения: 62
Зарегистрирован: 01.07.2005 (Пт) 21:23
Откуда: Челябинск city

Сообщение Boss IT » 05.11.2005 (Сб) 21:37

Grimm писал(а):для этого существую связи между таблицами или просто ключи


ID вопроса как раз и является уникальным. Просто чтобы не хранить избыточные данны в табл. Ответы, я записываю ID вопроса.[/b]

Boss IT
Обычный пользователь
Обычный пользователь
 
Сообщения: 62
Зарегистрирован: 01.07.2005 (Пт) 21:23
Откуда: Челябинск city

Сообщение Boss IT » 05.11.2005 (Сб) 21:43

GSerg писал(а):"Если ты завязываешь логику на первичный ключ, ты сам себе злобный буратино" (c) alibek

Ключ-то не трогай. Не по нему сортируешь же.


Т.е. так примерно :

ID | Vopros | RND
1 | Кто такой Путин | Вопрос 3
2 | Что такое VB | Вопрос 6
3 | Вопрос 3 | Вопрос 4
4 | Вопрос 4 |Что такое VB
5 | Вопрос 5 | Кто такой Путин
6 | Вопрос 6 | Вопрос 5

затем я вывожу вопрос, ищу его в столбце Vopros, получаю его ID, и по нему сверяю ответы. Правильно понял?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.11.2005 (Сб) 21:50

Ага...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Boss IT
Обычный пользователь
Обычный пользователь
 
Сообщения: 62
Зарегистрирован: 01.07.2005 (Пт) 21:23
Откуда: Челябинск city

Сообщение Boss IT » 05.11.2005 (Сб) 22:16

GSerg писал(а):Ага...


Спасибо, попробую завтра с утречка =)). Еще хотел спросить(пока не забыл) сколько сможет держать аксес в мб? Какой у нее предел? Например если будет там записей пол-миллиона, нормально? не сломается?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.11.2005 (Сб) 22:33

То ли 2 гига, то ли 4. Кажется 2.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Boss IT
Обычный пользователь
Обычный пользователь
 
Сообщения: 62
Зарегистрирован: 01.07.2005 (Пт) 21:23
Откуда: Челябинск city

Сообщение Boss IT » 05.11.2005 (Сб) 22:40

GSerg писал(а):То ли 2 гига, то ли 4. Кажется 2.

Ясно, сенкс =)


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

    TopList