php - PHP Mysql LIMIT 查询失败
问题描述
我正在尝试使用包含 3 个表的连接查询来获取消息,一切正常,但是当我尝试限制结果时,查询失败并且不返回任何内容
询问
SELECT
P.patient_name,
DM.message,
DM.secsince,
DM.id,
DM.pid,
DM.did,
DM.mode,
DM.date,
DM.seen
FROM tbl_patient P,
tbl_doct D,
tbl_doct_messages DM
WHERE (DM.did = D.id AND DM.pid = P.id)
AND (DM.mode = 'in')
AND (D.id = '$id')
ORDER BY DM.secsince DESC;
此查询工作正常,并给了我预期的结果
但是当我使用 LIMIT 它失败并且由于某种原因没有返回任何东西
询问
SELECT
P.patient_name,
DM.message,
DM.secsince,
DM.id,
DM.pid,
DM.did,
DM.mode,
DM.date,
DM.seen
FROM tbl_patient P,
tbl_doct D,
tbl_doct_messages DM
WHERE (DM.did = D.id AND DM.pid = P.id)
AND (DM.mode = 'in')
AND (D.id = '$id')
ORDER BY
DM.secsince DESC;
LIMIT=1;
这是整个php代码
<?php
include("conn.php");
if(mysqli_connect_error($con)) {
echo "Failed To Connect";
}
$id = $_GET['id'];
$qry = "SELECT P.patient_name, DM.message, DM.secsince, DM.id, DM.pid, DM.did, DM.mode, DM.date, DM.seen
FROM tbl_patient P, tbl_doct D, tbl_doct_messages DM
WHERE (DM.did = D.id AND DM.pid = P.id) AND (DM.mode = 'in') AND (D.id = '$id')
ORDER BY DM.secsince DESC
LIMIT=1;";
$res = mysqli_query($con, $qry);
$flag = array();
while(($row = mysqli_fetch_array($res))){
array_push($flag, $row);
}
echo json_encode($flag);
mysqli_close($con);
?>
但是没有结果,所以当我添加限制时 mysqli_fetch_array 失败
为什么会这样?我基本上没有想法。
解决方案
因为正确的语法是LIMIT 1
而不是LIMIT = 1
推荐阅读
- php - Symfony4 控制器 __construct() ArgumentCountError
- ios - Xcode 10 - 获取单元测试日志文件
- android - 播放视频数小时后,设备 ActivityManagerService 报告“内存不足”
- python - Python 有效电话号码
- r - R - 读取水平排列的 csv 文件,替换值并再次保存
- regex - 使用双引号组合在正则表达式中捕获数据
- google-apps-script - 在循环 Google 表格中创建第二个循环
- android - 我在 android studio 中加载小部件时遇到问题
- npm - Yarn - 工作区 - Lerna - 我无法使用工作区功能添加我的包
- dart - Flutter admob show() 方法重新构建“/”页面