1
我執行這個查詢如何解決子查詢返回超過10行錯誤
$sql=mysql_query("SELECT c.*,
(SELECT Count(b.text) From tbl_people_comment Where b.idsms=c.id AND b.visible=1) AS ccomment
FROM tbl_peoplesms AS c
INNER JOIN tbl_people_comment AS b ON b.idsms= c.id
WHERE c.visible=1
GROUP BY c.id");
我試圖讓它返回這樣的事情在PHP
[
{
"id":"20",
"name":"test",
"text":"test",
"visible":"1",
"ccomment":"5"
},
{
"id":"19",
"name":"test",
"text":"test",
"visible":"1"
"ccomment":"7"
}
]
我使用此代碼顯示它
while($row=mysql_fetch_assoc($sql))
$output[]=$row;
print(json_encode($output, JSON_UNESCAPED_UNICODE));
但是,我收到錯誤子查詢返回多於1行。
這是tbl_peoplesms tbl_peoplesms
和tbl_people_comment tbl_people_comment
所以你需要重寫子查詢,只返回一行。簡單的解決方案是給子查詢添加「LIMIT 1」,但是鑑於您似乎並不指望多行被返回,您可能在別處遇到問題。雖然看着你的查詢,但它不可能返回多行。你確定這是正確的查詢嗎? –
我添加了我的表格。可以爲我寫一個查詢嗎? –
其實在你的問題查詢不應該給你提到的錯誤。因爲你的子查詢是一個'select count()',沒有'group by' ......你沒給我們提供原始的錯誤代碼 –