autoua
×
Autoua.netФорумВирішення побутових проблем

Нужен хелп по MS Access

Мягкая и пушистая ;о) ****
Киев
Сообщения: 2626
С нами с 15.10.2004

Нужен хелп по MS Access
      28 апреля 2005 в 10:14 Гілками

Друзья, подскажите, плз

Есть таблица, скажем, 1 млн. записей, нужно из нее random выбрать 1000 записей и засунуть в другую таблицу...

Сейчас делаю это так: делаю дополнительное поле random, потом его сортирую и отбираю путем ctrl-c > ctrl-v в другую таблицу. Получается, мягко говоря, не очень удобно

Можь, кто знает способ полегче?


Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
опытный писатель ***
49 лет, Харьков
Сообщения: 1204
С нами с 05.12.2003

RE: Нужен хелп по MS Access [Re: -TIGRA-]
      28 апреля 2005 в 11:55 Гілками

создаешь запрос, результаты которого отражаются в таблице.

Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
Мягкая и пушистая ;о) ****
Киев
Сообщения: 2626
С нами с 15.10.2004

Re: RE: Нужен хелп по MS Access [Re: Staz]
      28 апреля 2005 в 13:59 Гілками

очень дельный совет

реально можешь помочь? тогда буду рассказывать подробнее


Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
приверженец **
49 лет, Вышгород
Сообщения: 432
С нами с 27.05.2004

Re: RE: Нужен хелп по MS Access [Re: -TIGRA-]
      28 апреля 2005 в 15:30 Гілками

Я вот такой хэлп себе скачал, правда пока не пользовался.

Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
важничающий писатель *
Киев
Сообщения: 2218
С нами с 01.04.2003

Re: RE: Нужен хелп по MS Access [Re: -TIGRA-]
      28 апреля 2005 в 15:49 Гілками

Обычный запрос, но не на выборку, а на создание таблицы.
Его результаты будут сохранены в отдельной таблице.


Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
Мягкая и пушистая ;о) ****
Киев
Сообщения: 2626
С нами с 15.10.2004

Re: RE: Нужен хелп по MS Access [Re: Wolf]
      28 апреля 2005 в 15:53 Гілками

Итак....
Создание, добавление, удаление таблиц и всякая чепухень - это элементарно

Как создать таблицу при таких условиях:
количество записей столько-то, выбрать из этого поля рендомом (то есть установка каких-либо условий не принимается, как решение проблемы)

Здесь нужно писать маленькую процедурку или макросик - вот кто знает как .....


Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
Мягкая и пушистая ;о) ****
Киев
Сообщения: 2626
С нами с 15.10.2004

Re: RE: Нужен хелп по MS Access [Re: -Вова-]
      28 апреля 2005 в 15:54 Гілками

спасибо, попробую глянуть

Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
R.I.P ***
Киев
Сообщения: 13078
С нами с 24.03.2004

Re: Нужен хелп по MS Access [Re: -TIGRA-]
      28 апреля 2005 в 16:01 Гілками

Вот выдержка из справочной системы MS Access
(Посмотрите еще INSERT ... INTO)


Инструкция SELECT...INTO
Создает запрос на создание таблицы.

Синтаксис
SELECT поле_1[, поле_2[, ...]] INTO новаяТаблица [IN внешняяБазаДанных]
FROM источник

Ниже перечислены аргументы инструкции SELECT...INTO:

Элемент Описание
поле_1, поле_2 Имена полей, которые следует скопировать в новую таблицу.
новаяТаблица Имя создаваемой таблицы. Это имя должно удовлетворять стандартным правилам именования. Если новаяТаблица совпадает с именем существующей таблицы, возникает перехватываемая ошибка.
внешняяБазаДанных Путь к внешней базе данных. Более подробные сведения об этом аргументе можно найти в описании предложения IN.
источник Имя существующей таблицы, из которой отбираются записи. Это может быть одна таблица, несколько таблиц или запрос.


Дополнительные сведения
Запрос на создание таблицы можно использовать для архивирования записей, создания резервных копий таблицы, копий для экспорта в другую базу данных, а также в качестве основы отчета, отображающего данные за конкретный период времени. Например, можно создать отчет «Ежемесячные продажи по областям», выполняя каждый месяц один и тот же запрос на создание таблицы.


Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
Мягкая и пушистая ;о) ****
Киев
Сообщения: 2626
С нами с 15.10.2004

Re: Нужен хелп по MS Access [Re: Uncle]
      28 апреля 2005 в 16:11 Гілками

спасибо

может быть Вы там высмотите еще куда random ставить?


Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
R.I.P ***
Киев
Сообщения: 13078
С нами с 24.03.2004

Re: Нужен хелп по MS Access [Re: -TIGRA-]
      28 апреля 2005 в 17:38 Гілками

В один прием у меня никак не получается.
Поробуйте вот так:
1. Создаем дополнительно поле (в примере оно будет называться RANDOM_F) в таблице
с даннымы (в примере она будет называться DATA_TABLE)
2. Создаем запрос на обновление данных в таблице DATA_TABLE. Он будет звучать
примерно так:

UPDATE DATA_TABLE SET DATA_TABLE.RANDOM_F = Rnd([ИМЯ_КЛЮЧЕВОГО_ПОЛЯ_ТАБЛИЦЫ_DATA_TABLE]);

После каждого запуска этого запроса поля RANDOM_F будут принимать все время разные (случайные) значения
3. Создаем запрос на выборку из таблицы DATA_TABLE:

SELECT TOP 100 ПОЛЕ1, ПОЛЕ2, ...
FROM DATA_TABLE
ORDER BY DATA_TABLE.RANDOM_F;

Для того, что бы получить новый набор случайных данных, необходимо запустить эту пару запросов.
Сначала на обновление полей со случайным числом, а затем на выборку 100 верхних записей.
Примечание:
В запросе на обновление используется встроенная функция Rnd с
аргументом ИМЯ_КЛЮЧЕВОГО_ПОЛЯ_ТАБЛИЦЫ_DATA_TABLE, имеется ввиду, блин,
ключевое поле и имеется ввиду, например ID записи


Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
Мягкая и пушистая ;о) ****
Киев
Сообщения: 2626
С нами с 15.10.2004

Re: Спасибо!!!! [Re: Uncle]
      28 апреля 2005 в 17:49 Гілками

спасибочки большое - обязательно попробую!

пока вышла из ситуации похожим способом:
1) в исходной таблице добавляем поле, куда вставляем рендомом значения,
2) потом сортируем по этому рендом-полю таблицу,
3) потом смотрим значение рендом-поля на нужной записи
4) в запросе на создание таблицы ограничиваем значение рендом-поля числом, которое получили в п.3...

Пока получилось Обошлось даже без программулин

Еще раз спасибо за помощь и за время !!!!!



Роздрукувати   Нагадати!   Сповістити модератора   Відправити по E-mail
Autoua.netФорумВирішення побутових проблем
Додаткова інформація
0 користувачів і 57 що побажали залишитися невідомими читають цей форум.

Модератор:  AlMat, doctor_b, moderator, Outdriver 

Роздрукувати всю тему

Права
      Ви не можете створювати нові теми
      Ви не можете відповідати на повідомлення
      HTML дозволений
      UBBCode дозволений

Рейтинг:
Переглядів теми: 2426

Оціните цю тему

Перейти в

Правила конференції | Календар | FAQ | Карта розділу | Мобільна версія