Задать вопрос
  • Как найти минимальное свободное значение в диапазоне?

    @Us59 Автор вопроса
    alexalexes,
    CREATE TABLE mytable (
        number DECIMAL(25, 8)
    );
    
    INSERT INTO mytable (number) VALUES
    (10.00100000),
    (10.00200000),
    (10.00500000),
    (15.00000000);
    Написано
  • Как найти минимальное свободное значение в диапазоне?

    @Us59 Автор вопроса
    Akina, задача-то простая, просто каждый понимает её по-своему, действительно сформулировать вопрос для меня это проблема, однако я рассказал как я делал на PHP и должно быть понятным.

    Вот для примера код на PHP:
    $isUnique = false;
    $number = 10;
    $i = 0;
    while ($i < 1000 && !$isUnique) {
    	$number = $number + $i;
    	$countRows = mysqli_num_rows(dquery("SELECT id from table where number='" . $number . "'"));
    	if ($countRows === 0) {
    		echo $number;
    		$isUnique = true;
    	}
    	$i++;
    }

    Вопрос: Как сделать тоже самое только через sql запрос? Как вы видите мы через цикл добавляем к 10+1 и ищем первое отсутствующее в БД значение, это и будет нашим результатом. Может так понятнее задача)?
    Написано
  • Как найти минимальное свободное значение в диапазоне?

    @Us59 Автор вопроса
    alexalexes, спасибо за ваши ответы и время, однако это не то, что нужно, судя по всему, простым sql запросом мою задачу не решить, поэтому наверное лучше оставить как я сделал через PHP цикл: Я делаю select с заданным значением number (10) и проверяю нашлось ли что-то в БД с таким же number. Если нашлось, то я создал цикл на PHP в котором к заданному значению (10) прибавляю 0.001 и делаю select снова, чтобы проверить, найдется ли что-то теперь, и так цикл выполняется до тех пор, пока не найдет число, которого не существует в таблице.
    Написано
  • Как найти минимальное свободное значение в диапазоне?

    @Us59 Автор вопроса
    ну добавьте в условия отбора ещё и условие, что value >= 10, какие сложности-то?

    Сложность как я вижу в том, что мы задаем в выборке найти значение из БД, а в задаче требуется не искать значение из таблицы, а узнать, сколько раз нужно к заданному числу нужно прибавить по 0.001, чтобы найти number которого еще нет в таблице.

    По поводу decimal - 25,8 на практике в базе.
    Написано
  • Как найти минимальное свободное значение в диапазоне?

    @Us59 Автор вопроса
    alexalexes, если объяснить еще проще, то: Я делаю select с заданным значением (10) и проверяю нашлось ли что-то в БД. Если нашлось, то я создал цикл на PHP в котором к заданному значению прибавляю 0.001 и делаю select снова, чтобы проверить, найдется ли что-то теперь и так цикл выполняется до тех пор, пока не найдет число, которого не существует в таблице. Однако делать такой цикл мне кажется не очень разумно, поэтому хочу реализовать поиск напрямую через SQL, но пока что не знаю как.
    Написано
  • Как найти минимальное свободное значение в диапазоне?

    @Us59 Автор вопроса
    alexalexes, Хочу найти число, прибавив которое к заданному мы получим свободное значение в БД (не существующее ближайшее число, которое мы можем записать как новое)
    Написано
  • Как найти минимальное свободное значение в диапазоне?

    @Us59 Автор вопроса
    alexalexes Судя по тому, что я не вижу где вы используете заданное число 10 полагаю как и автор поста выше ваш запрос выполняет другую задачу. Мне нужно искать ближайшее минимальное число от заданного числа 10 прибавляя по 0.001
    Написано
  • Как найти минимальное свободное значение в диапазоне?

    @Us59 Автор вопроса
    Akina, если объяснить еще проще, то: Я делаю select с заданным значением (10) и проверяю нашлось ли что-то в БД. Если нашлось, то я создал цикл на PHP в котором к заданному значению прибавляю 0.001 и делаю select снова, чтобы проверить, найдется ли что-то теперь и так цикл выполняется до тех пор, пока не найдет число, которого не существует в таблице. Однако делать такой цикл мне кажется не очень разумно, поэтому хочу реализовать поиск напрямую через SQL, но пока что не знаю как.
    Написано
  • Как найти минимальное свободное значение в диапазоне?

    @Us59 Автор вопроса
    Akina, тип данных у меня decimal (8,8).

    Ваш запрос работает, но выполняет не ту задачу, которую нужно :)

    Я хочу проверять от Заданного числа. т.е. существует ли заданное значение в таблице, если да, то прибавлять к ЗАДАННОМУ значению 0.001 и проверять снова, чтобы понять, существует ли 10+0.001, если да, то прибавляем еще и ищем до тех пор, пока не найдем минимальный НЕ существующий number.
    Написано
  • Как найти минимальное свободное значение в диапазоне?

    @Us59 Автор вопроса
    Сергей Соловьев, нужно минимальное, если брать из примера, то 0.004 свободно, оно и должно быть результатом. А как решается проблема с дробными числами?
    Написано
  • Как выполнить код последовательно?

    @Us59 Автор вопроса
    Василий Банников, разобрался. Вы можете использовать await только тогда, когда ваш ответ возвращает обещание. К сожалению, jQuery ajax не возвращает Promise после завершения.
    Написано
  • Как выполнить код последовательно?

    @Us59 Автор вопроса
    Василий Банников, попробовал применить этот код, однако результат такой же, в Console видим вызов 222, и только через время 111.
    Написано
  • Как выполнить код последовательно?

    @Us59 Автор вопроса
    Василий Банников, можете показать пример? Смысл в том, что функция SubmitData вызывается во многих частях проекта, и нужно доработать часть с загрузкой рекапчи именно в самой функции, чтобы не перелопачивать весь проект. Тем временем я пойду изучать fetch в гугле, т.к. не использовал ранее.
    Написано
  • Как выполнить код последовательно?

    @Us59 Автор вопроса
    Василий Банников, придерживаюсь основных функций текущего проекта, т.к. это доработки проекта, а не написание чего-то с полного 0
    Написано
  • Как выполнить код последовательно?

    @Us59 Автор вопроса
    Василий Банников проблема в том, что придется 2 раза вставлять $.ajax одинаковый при такой конструкции
    Написано
  • Почему не выводит Print("TEST")?

    @Us59 Автор вопроса
    Vindicar, похоже проблема в том, что название файла начинается с test_some_script_name.py
  • Почему не выводит Print("TEST")?

    @Us59 Автор вопроса
    Vindicar Подскажите пожалуйста, как нужно? Я копирую стандартное содержимое файла main и пытаюсь запустить такой же код в другом файле - не работает
  • Как установить php_pdo_mysql?

    @Us59 Автор вопроса
    AUser0, сделал как вы сказали:
    в php.ini изменил строчку extension=php_pdo_mysql.so на extension=pdo_mysql.so перезагрузился, в error.log ошибка:
    PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/20131226/pdo_mysql.so' - /usr/lib/php/20131226/pdo_mysql.so: undefined symbol: mysqlnd_allocator in Unknown on line 0


    файл существует. Какой модуль я еще должен установить?
  • Как установить php_pdo_mysql?

    @Us59 Автор вопроса
    AUser0, честно, пытаюсь понять, но не пойму никак :(
    Вот ищу файл как вы сказали:
    find /usr/lib/php/ -name pdo_mysql.so
    /usr/lib/php/20131226/pdo_mysql.so
    /usr/lib/php/20190902/pdo_mysql.so
    /usr/lib/php/20180731/pdo_mysql.so

    Нашлось почему-то 3 пути.

    В php.ini я нахожу только extension=php_pdo_mysql.so, там нету pdo_mysql.so без "php_"

    Что я должен сделать? Вписать pdo_mysql.so в мой файл php.ini эту строку? куда? зачем? в каком формате... не могу понять(