Сподіваюсь, що я не збираюся переходити за межі своєї першої публікації, але я хотів би трохи розширити питання про ціле число до рядка, оскільки, здається, деякі респонденти мають неправильну інформацію.
Оскільки вираз у цьому запиті використовує арифметичний оператор (символ плюс +), MySQL перетворить будь-які рядки у виразу в числа.
Щоб продемонструвати, результат 6 дасть результат:
SELECT ' 05.05 '+'.95';
З'єднання рядків у MySQL вимагає функції CONCAT (), тому тут немає двозначності, і MySQL перетворює рядки в плаваючі та додає їх разом.
Насправді я думаю, що причина, по якій початковий запит не працювала, є найімовірнішою тому, що змінна $ очок насправді не була встановлена на поточні точки користувача. Він був або встановлений в нуль, або був встановлений без налаштування: MySQL видасть порожню рядок до нуля. Для ілюстрації наступне поверне 0:
SELECT ABS('');
Як я вже сказав, я сподіваюся, що я не надто поза темою. Я згоден, що Даан і Томаш мають найкращі рішення для цієї конкретної проблеми.