Я пытаюсь выяснить, как получить одну случайную строку, возвращаемую на одну учетную запись из таблицы. Таблица имеет несколько строк на одну учетную запись или, в некоторых случаях, только одну строку. Я хочу иметь возможность получить случайный результат в моем выборе, поэтому каждый день, когда я запускаю тот же оператор, я могу получить другой результат.Случайное значение SQL Server 2014 в группе
Это основа запроса:
select number, phonenumber
from phones_master with(nolock)
where phonetypeid = '3'
Это результат выборки устанавливается
number phonenumber
--------------------------
4130772, 6789100949
4130772, 6789257988
4130774, 6784519098
4130775, 6786006874
В колонке под названием Number
это учетная запись. Я хотел бы вернуть одну случайную строку. Поэтому, основываясь на наборе результатов теста выше, запрос должен возвращать 3 строки.
Любые предложения были бы весьма полезными. Я бил головой о стену с этим.
Благодаря
Почему 'С (NOLOCK)'? Это означает «читать грязные данные», а не «не принимать никаких блокировок». Если у вас проблемы с блокировкой, подумайте о переходе на SNAPSHOT ISOLATION –