Mysql查询order by,longtext值为int

标签 mysql

我尝试了下面的查询,它给了我错误。错误是什么?

SELECT listingsdbelements_field_value
FROM default_en_listingsdbelements
ORDER BY CAST(listingsdbelements_field_value AS INT) ASC 

Query: SELECT listingsdbelements_field_value FROM default_en_listingsdbelements ORDER BY CAST(listingsdbelements_field_value AS INT) AS...

Error Code: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INT) ASC LIMIT 0, 1000' at line 3

最佳答案

根据您的需要使用签名或未签名。

SELECT listingsdbelements_field_value
FROM default_en_listingsdbelements
ORDER BY CAST(listingsdbelements_field_value AS UNSIGNED) ASC 

来自 MySQL - SIGNED 将值转换为 SIGNED 类型,这是一个带符号的 64 位整数 UNSIGNED 将 value 转换为 UNSIGNED 类型,即无符号 64 位整数

关于Mysql查询order by,longtext值为int,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48128361/

相关文章:

javascript - 为 Web 应用程序连接多个表

android - 将通知从基于 Web 的应用程序推送到 Android

MySQL 大型数据集

java - 带查询的 Actionevent 不起作用

python - 从其他表访问数据 - Django Rest Api 中的外键 - 未知列

mysql - C(树莓派)从文本文件中读取不同长度的行

php - laravel 中的关系和 Blade

php - 更改密码后拒绝访问 phpMyAdmin,config.inc.php 仅可读

php - 使用 PHP 到 mySQL 查询 SELECT COUNT

MySQL:用户 "views"的表结构