MYSQL语法出错:Where

时间:2016-03-22 04:50:58

标签: php mysql

在以下php脚本中使用命令WHERE时遇到问题

$sql = "SELECT t.nama, b.nama, k.nama, r.program, r.rka1, b.kode, r.tahun FROM rka1 r 
LEFT JOIN tahun t ON r.tahun=t.tahun 
LEFT JOIN komisi k ON r.komisi=k.komisi 
LEFT JOIN bidang b ON r.bidang=b.bidang 
ORDER BY r.tahun, r.bidang, r.komisi, r.rka1 
WHERE r.komisi=$komisi";

始终显示如下错误消息:

  

您的SQL语法有错误;检查手册   对应于您的MySQL服务器版本,以便使用正确的语法   在第6行'WHERE r.komisi = 20'附近

有谁可以解释我的错误,谢谢你的回复

3 个答案:

答案 0 :(得分:1)

$sql = "SELECT t.nama, b.nama, k.nama, r.program, r.rka1, b.kode, r.tahun FROM rka1 r 
LEFT JOIN tahun t ON r.tahun=t.tahun 
LEFT JOIN komisi k ON r.komisi=k.komisi 
LEFT JOIN bidang b ON r.bidang=b.bidang 
WHERE r.komisi=$komisi
ORDER BY r.tahun, r.bidang, r.komisi, r.rka1 
";

答案 1 :(得分:0)

试试这个,

$komisi

我刚用大括号包裹你的$komisi变量。如果s = 'letter of letters' for i in s.split(" "): if len(i) > 4: s = s.replace(i, i[::-1]) print s 的值是字符串,则可以在其周围添加单引号。

希望这有帮助!

答案 2 :(得分:0)

这是MYSQL SELECT查询的简单格式

SELECT [fields] FROM [table name] WHERE [condition] ORDER BY [fields] GROUP BY [fields]

Read More

请在where之前使用ORDER BY

$sql = "SELECT t.nama, b.nama, k.nama, r.program, r.rka1, b.kode, r.tahun 
   FROM rka1 r 
   LEFT JOIN tahun t ON r.tahun=t.tahun 
   LEFT JOIN komisi k ON r.komisi=k.komisi 
   LEFT JOIN bidang b ON r.bidang=b.bidang 
WHERE r.komisi=$komisi
ORDER BY r.tahun, r.bidang, r.komisi, r.rka1 ";