Я пытаюсь выбрать числа из базы данных, хранящейся как unsigned tinyint Но на выходе мне нужно, чтобы они были отрицательными.CAST unsigned to signed int in MySql
Это то, что я делаю:
SELECT
-CAST(sales_shipments_items.qty AS SIGNED INTEGER) AS qty,
FROM sales_shipments_items
WHERE 1
& это работает на моей локальной машине с MySQL 5.5.25 Но возвращает 0 на сервере с MySQL 5.5.32-ХЛЛ-LVE
BTW , на моей локальной машине мне даже не нужно использовать CAST, без нее.
Я пытался использовать CONVERT вместо CAST, но до сих пор получить только
Примеры данных 0 в sales_shipments_items
id|type|shp_num|qty
3 1 3321 2
4 1 3322 2
5 2 3321 2
6 3 3320 1
7 4 3350 1
8 5 3351 3
Я ожидал увидеть:
-2
-2
-2
-1
-1
-3
Поставляется с Значение BIGINT UNSIGNED находится за пределами допустимого диапазона в '(0 - 'krumaneq_ordering'.'sales_shipments_items'''qty')' – AnKing
Можете добавить несколько примеров данных к вашему вопросу? ожидаемый результат? –
Он просто не работает на сервере. Нет проблем с локальным выходом. Это ошибка mysql в этой конкретной версии, и я должен сообщить об этом хостеру? – AnKing