我有一个数据库结果显示要约要约为TEXT
,我也在VARCHAR
的要约字段中尝试过它
我的结果(要约字段包含值):
mark 1234 | peter 201 | zara 449 |lily 2145
这不起作用(即使以TEXT
和VARCHAR
的形式提供):
$result = mysqli_query($mysqli, "select name, offer from friends ORDER BY offer DESC LIMIT 3");
结果: mark 1234 | peter 201 | zara 449
-错误
这仅适用于1个结果(但我想要3个结果):
$result = mysqli_query($mysqli, "select name, max(offer) from friends ORDER BY offer DESC LIMIT 3");
结果: lily 2145
我真正想得到的结果是
mark 1234 | lily 2145 | zara 449
答案 0 :(得分:1)
如果您提供字符串形式的值,则该值按char排序,因此如果您需要按数字排序的rder,则可以按以下顺序使用强制转换为整数(unsignef)
$result = mysqli_query($mysqli, "select name, offer
from friends ORDER BY cast(offer AS UNISGNED) DESC LIMIT 3");
答案 1 :(得分:0)
我认为这是一个愚蠢的错误,只是忽略报价而不是最高价
$result = mysqli_query($mysqli, "select name, offer from friends ORDER BY offer DESC LIMIT 3");