Php 在我的上一个表行中选择不同的值
我不知道怎么了;我检查我的查询,但它返回不同的值 这是我的桌子Php 在我的上一个表行中选择不同的值,php,mysql,Php,Mysql,我不知道怎么了;我检查我的查询,但它返回不同的值 这是我的桌子 user_idno | func | quest_idno | ---------------------------------- P-001 | F1 | 1 | P-001 | F1 | 2 | P-001 | F1 | 3 | P-001 | F1 | 4 | P-0
user_idno | func | quest_idno |
----------------------------------
P-001 | F1 | 1 |
P-001 | F1 | 2 |
P-001 | F1 | 3 |
P-001 | F1 | 4 |
P-001 | F1 | 5 |
P-001 | F1 | 21 |
我想要的是选择问题ID中的最后一行。这是我的代码:
$prevQuestion = "SELECT quest_idno FROM engexam_counter
WHERE user_idno = '$user_id'
ORDER BY quest_idno DESC LIMIT 0,1";
if ($prevResult=mysqli_query($con,$prevQuestion)){
$prevCount = mysqli_num_rows($prevResult);
if($prevCount>0){
$prevObj=mysqli_fetch_object($prevResult);
echo $prevQuestID = $prevObj->quest_idno . '<br>';
$prevQuestion=“从engexam_计数器中选择任务ID号”
其中user_id no='$user_id'
按任务订购\u idno DESC限制0,1“;
if($prevResult=mysqli_查询($con,$prevQuestion)){
$prevCount=mysqli\u num\u行($prevResult);
如果($prevCount>0){
$prevObj=mysqli\u fetch\u对象($prevResult);
echo$prevQuestID=$prevObj->quest_-idno.“
”;
但当我尝试回显时,输出是:
五,
我想得到的是:
二十一,
我也使用子查询并使用MAX(id),但输出是相同的。尝试以下方法:
假设您的“任务ID号”为字符:
SELECT MAX(CAST(quest_idno AS UNSIGNED)) as qid FROM engexam_counter WHERE user_idno = '$user_id'
我打赌你的
quest\u id no
是char
或varchar
当它应该是数字类型时。也应该是LIMIT 1
谢谢伙计们,我忽略了我的结构,是的,它是varchar。谢谢@MikeW