我终于在这里创建了我的帐户。你帮了我很长时间,但这次我在这里找不到答案。
我是MySqli的新手,我正在尝试运行一个在phpMyAdmin中工作的脚本。
当我尝试使用"mysql变量"时,就会出现问题。代码和错误如下。
$consulta = "SET @var= (SELECT ticket_id FROM ost_ticket WHERE number = 410037);
SELECT DISTINCT a.number, a.created, b.address,
SELECT DISTINCT title FROM ost_ticket_thread a WHERE a.ticket_id = @var AND a.source LIKE 'API')title,
SELECT DISTINCT body FROM ost_ticket_thread a WHERE a.ticket_id = @var AND a.source LIKE 'API')body,
d.state,
c.body resposta
FROM ost_ticket a
LEFT JOIN ost_user_email b ON b.user_id = a.user_id
LEFT JOIN ost_ticket_thread c ON c.ticket_id = a.ticket_id
LEFT JOIN ost_ticket_status d ON d.id = a.status_id
WHERE a.ticket_id = @var AND c.id = (SELECT MAX( a.id ) FROM ost_ticket_thread a WHERE a.ticket_id = @var ) ";
$resultado = $MySQLi->query($consulta) OR trigger_error($MySQLi->error, E_USER_ERROR);
$cont = 0;
while ($informacao = $resultado->fetch_object()) {
$data[$cont] = array(
'numprot' => $informacao->number,
'email' => $informacao->address,
'assunto' => $informacao->title,
'status' => $informacao->state,
'body' => $informacao->body,
'resposta' => $informacao->resposta,
'dtcriacao' => $informacao->created,
);
$cont++;
}
echo "{'lista':".json_encode($data)."}";
正如我所说,它在phpMyAdmin中运行良好,但在mysqli查询函数中出现了以下错误。
Fatal error: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'SELECT distinct a.number,a.created,b.address, (select distinct title from ost_t' at line 3 in /home/u605553750/public_html/JSONResposta.php on line 22
22号线在匹配
$resultado = $MySQLi->query($consulta) OR trigger_error($MySQLi->error, E_USER_ERROR);
在MySqli上运行它的正确方法是什么?
谢谢Bruno
似乎忘记了那一行的from。
SELECT DISTINCT a.number,a.created,b.address [FROM YOURTABLE]<-add this, (...
经过澄清,我想我更理解你的意图,在这种情况下,你应该确保你的子查询返回一个select_expression。注意到"AS"了吗?
SELECT DISTINCT a.number,a.created,b.address,
(SELECT DISTINCT title FROM ost_ticket_thread a WHERE a.ticket_id = @var AND a.source LIKE 'API') AS title
http://dev.mysql.com/doc/refman/5.7/en/select.html