Nano Hash - криптовалюты, майнинг, программирование

Выбрать случайные записи

У меня есть один стол. Он связан (без первичного ключа) и называется «spcDB». Мне нужно выбрать случайным образом 12 записей в зависимости от столбца «область» и «местоположение». Область имеет два числовых значения: «211» и «231». Мне нужно выбрать 8 - "211" и 4 - "231" записи. Каждое значение из «местоположения» уникально.

Я написал этот код VBA (moduleOne):

Function Randomizer() As Integer Static AlreadyDone As Integer If AlreadyDone = False Then Randomize: AlreadyDone = True Randomizer = 0 End Function

.. и мой SELECT выглядит так ..

SELECT TOP 8 spcDB.LOC, spcDB.AREA_TYPE
FROM spcDB
WHERE randomizer() = 0 and spcDB.AREA_TYPE = "211"
ORDER BY rnd(isnull(spcDB.LOC) * 0 + 1);

SELECT TOP 4 spcDB.LOC, spcDB.AREA_TYPE
FROM spcDB
WHERE randomizer() = 0 and spcDB.AREA_TYPE = "231"
ORDER BY rnd(isnull(spcDB.LOC) * 0 + 1);

Сначала сгенерируйте 8 пар локаций и 211 областей. Второй 4 лок + 231 район. Мой вопрос: как объединить эти два выбора в один?


  • поставить UNION ALL между ними 21.06.2016

Ответы:


1

Ваш запрос будет использовать ту же последовательность, если вы закроете и снова откроете Access. Чтобы избежать этого, добавьте в Rnd начальное число, зависящее от времени, которое меняется для каждого уникального идентификатора:

SELECT TOP 8
    spcDB.LOC, 
    spcDB.AREA_TYPE,
    Rnd(-Timer()*spcDB.LOC) AS [Rnd Generator] 
FROM 
    spcDB
WHERE 
    spcDB.AREA_TYPE = "211"
ORDER BY
    Rnd(-Timer()*spcDB.LOC)

UNION ALL

SELECT TOP 4
    spcDB.LOC, 
    spcDB.AREA_TYPE,
    Rnd(-Timer()*spcDB.LOC) AS [Rnd Generator] 
FROM 
    spcDB
WHERE 
    spcDB.AREA_TYPE = "231"
ORDER BY
    Rnd(-Timer()*spcDB.LOC)
21.06.2016
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..