Php перемешивает 2 уникальных номера

У меня есть база данных с пользователями и номерами.

Я построил случайную выборку и попытался случайным образом дать пользователю число, и это сработало.

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

Основной код выглядит так:

    $numbers = range(0, $counts); // $counts are the number of users in my databse
    $numbers2 = range(0, $counts);
    shuffle($numbers);
    shuffle($numbers2);

    foreach($users as $user) {
        # Starts from 1 if higher than 52
        $uniqueRand  = (array_pop($numbers)+$currentWeek) % 52 + 1;
        $uniqueRand2 = (array_pop($numbers2)+$currentWeek) % 52 + 1;

        # tried something like this but did         
        while($uniqueRand == $uniqueRand2) {
            $numbers2 = range(0, $counts);
            shuffle($numbers2);
            $uniqueRand2 = (array_pop($numbers2)+$currentWeek) % 52+1;
        }

         ...# Storing in database
    }

Вот небольшой набросок приложения

Users      |       numbers
__________________________
Frank      |  14, 24
Tim        |  21, 43
Tom        |  52, 6
Hanz       |  8,  3
Benjamin   |  5,  1
West       |  7,  6
Thompson   |  4,  9
.....

Первая строка чисел 14,21,52... обозначает $numbers, а вторая строка — $numbers2, я хочу создать уникальные случайные значения, которые не повторяются, но как проверить, не повторяются ли $number в той же строке и по-прежнему уникальны по вертикали.

Так, например, что-то вроде этого будет неправильным:

Users      |       numbers
_________________________
Frank      |       14, 14

Что-то вроде этого тоже было бы неправильно:

Users      |       numbers
_________________________
Frank      |     14, 24
Tim        |     21, 14
Tom        |     14,  6
Hanz       |      8,  3
Benjamin   |      5,  14
West       |      14,  6
Thompson   |      4,  9

person Tina Turner    schedule 30.10.2015    source источник
comment
Только не говорите мне, что вы пытаетесь сделать эти комбинации цифр уникальными, чтобы потом использовать их для идентификации или для чего-то подобного?   -  person Transcendental    schedule 30.10.2015
comment
нет, это не предложение этого :D   -  person Tina Turner    schedule 30.10.2015
comment
Ты уверен, что хочешь это сделать? Вы хотите проверить, существуют ли эти номера в базе данных, создавая уникальные номера для сопоставления с ними, не создавая дубликатов? Если это то, о чем вопрос, вам понадобится кто-то, кто может ответить на него, кто знает свой SQL как гуру.   -  person Funk Forty Niner    schedule 30.10.2015
comment
да, я часами думаю, как это решить, поэтому вы предлагаете sql решить эту проблему?   -  person Tina Turner    schedule 30.10.2015
comment
Нормализация базы данных stackoverflow.com/questions/26321299/ --- en.wikipedia.org/wiki/Database_normalization   -  person Funk Forty Niner    schedule 30.10.2015
comment
вы должны разделить оба столбца как номер 1 и номер 2, тогда вы можете использовать запрос MySQL для вставки уникального номера по вертикали, а также по строке. Вы должны управлять этим в запросе. Затем вы можете использовать concat, чтобы получить результат в виде значений, разделенных запятыми.   -  person Suraj    schedule 30.10.2015
comment
Я разделил их в базе данных, я просто повторяю $number1, $number2   -  person Tina Turner    schedule 30.10.2015