В базу в поле int не вписать дробное число ?



  • Вот блин я обламываюсь. Никак не решаемо?
    Вместо 1 писать 10, вместо 4.7 писать 47 - вариант такое себе.



  • @kuzkuz said in В базу в поле int не вписать дробное число ?:

    Вот блин я обламываюсь. Никак не решаемо?
    Вместо 1 писать 10, вместо 4.7 писать 47 - вариант такое себе.

    8295add7-e768-42b6-9acb-38127b8c5848-изображение.png



  • Ладно. Буду пробовать писать в поле с типом string. Получать значение от туда, переводить его в число. Когда нужно прибавлять 0.7 и возвращать в базу обратно. По идее должно сработать. Просто мне иногда нужно к числу прибавлять не 1, а 0.7 когда задание выполнилось "криво" но выполнилось.





  • @kuzkuz Я для себя думал так зделать, но понял что ето неефективно. база есть на то база что потом можна фильтри делать. А с числами очень часто надо делать фильтри больше меньше, например вытащить с бази баланси аков больше такогото числа, со стрингом потом тупик. В итоге я сосдал 2 поля. до "." и после "." часто мне не надо учитивить копейки. Тогда достаточно фильровать по первому. Иногда надо прибавить к другой баланс. Ну тогда ндо витажть 2 числа - сложить перевести в число - прибавить и опять розложить перед записом в бд. Но ето не сложно - один кубик на все случаи сделал. Идея умножать на 100 - записовать в бд. потом после витаскивания делить на 100 - мне не очень. Не люблю когда в бд нереальние цифры



  • @kuzkuz издеваешься? int = ЦЕЛОЕ это сокращение от integer.
    float = ПЛАВАТЬ это дробь, число с плавающей запятой.



  • @f0cus said in В базу в поле int не вписать дробное число ?:

    @kuzkuz издеваешься? int = ЦЕЛОЕ это сокращение от integer.
    float = ПЛАВАТЬ это дробь, число с плавающей запятой.

    Что издеваюсь.
    Я составлял проект. Составил. Начал реализовывать, а в базе нет числового поля кроме int
    Я об этом. Что вышел нехороший облом



  • @selector said in В базу в поле int не вписать дробное число ?:

    @kuzkuz Я для себя думал так зделать, но понял что ето неефективно. база есть на то база что потом можна фильтри делать. А с числами очень часто надо делать фильтри больше меньше, например вытащить с бази баланси аков больше такогото числа, со стрингом потом тупик. В итоге я сосдал 2 поля. до "." и после "." часто мне не надо учитивить копейки. Тогда достаточно фильровать по первому. Иногда надо прибавить к другой баланс. Ну тогда ндо витажть 2 числа - сложить перевести в число - прибавить и опять розложить перед записом в бд. Но ето не сложно - один кубик на все случаи сделал. Идея умножать на 100 - записовать в бд. потом после витаскивания делить на 100 - мне не очень. Не люблю когда в бд нереальние цифры

    У меня так не получится.
    Мне надо складывать баллы (оценки юзеру). Если задание выполнено без косяков то оценка=1, с косяками то балл меньше еденицы, например 0.7. Как только юзер набрал нужное кол-во баллов (оно тоже в другой колонке в базе задано) так он получает аттестат )



  • @kuzkuz есть такое но дело в том что float и js да и вообще погромирование в общем лучше не давать эту возможность тем кто в этом не сильно разбирается, возможно по этому этой настройки нет. Не знаю мотивацию разработчика но да с float можно заблудиться легко



  • @f0cus ты усложняешь. если бы база могла хранить любые числа, не только целые, это бы многим помогло (было полезно и удобно)



  • @kuzkuz обращайся к разработчику я то причем. А историй с float я конечно могу тебе сейчас нагуглить. Но не вижу смысла кто тебе мешает в выполнить код все оформить?



  • @f0cus я спорить не хочу. Ты видимо просто задачу не понял.
    Мне надо в базе хранить 4.7, 5, 7, 8, 8.2, 3.1 и т.д.
    Зря я на эмоциях (от облома) тему создал ;)



  • @kuzkuz сохраняй как строку, потом преобразуй parseFloat(), костыль да, но а что не костыль)), я в базу вообще все загоняю в base64 потом на месте обратно



  • @f0cus база - склад без возможности фильтров



  • @selector said in В базу в поле int не вписать дробное число ?:

    @f0cus база - склад без возможности фильтров

    Да, если сделать поле string и писать мои числа туда.
    Но даже и тут накостылить можно чтобы брать строки со значением меньше 4.1 или 5.2 например )) но не онлайн, а в срипте через перебор. а это конечно будет нагружать



  • @f0cus said in В базу в поле int не вписать дробное число ?:

    @kuzkuz сохраняй как строку, потом преобразуй parseFloat(), костыль да, но а что не костыль)), я в базу вообще все загоняю в base64 потом на месте обратно

    так тебе выше @selector правильно написал. Онлайн не отфильтровать.
    То что ты описываешь - это все понятно. Но кубиками с базы не пофильтруешь


Log in to reply