2014-12-09 19 views
0

我有MySQL查詢,如:MySQL表示:「#2014 - 命令不同步,你現在不能運行此命令」中嵌套查詢查詢使用PHP

select barno, case_number 
from barno_cases 
where case_number IN 
    (select case_number 
    from barno_cases 
    where filed BETWEEN "1963-01-01" AND "2014-12-09" 
    AND section="5" 
) 
Group by barno, case_number Order by barno" 

它給錯誤:「#2014 - 命令不同步;你現在不能運行這個命令「 我不知道發生了什麼問題。

任何想法。 在此先感謝。

回答

0

你不能有兩個同時查詢,因爲默認情況下mysqli使用未緩衝的查詢(對於準備好的語句;這與vanilla mysql_query相反)。您可以將第一個數據提取到數組中並循環訪問,或者通過mysqli緩存查詢(using $stmt->store_result())。

查看here瞭解詳情。

+0

我用的MySQL。這個查詢是否在MySql中工作...? – Yash 2014-12-09 12:18:56

+0

@Yash檢查查詢是否像PhpMyAdmin那樣工作。 – Jordy 2014-12-09 12:25:21

+0

謝謝@Jordy Query對單個Select查詢成功運行,但不能嵌套查詢。 – Yash 2014-12-09 12:38:04

0

即使查詢起作用,構建它也是非常愚蠢的。試想一下:

select DISTINCT barno, case_number 
from barno_cases 
where filed BETWEEN '1963-01-01' AND '2014-12-09' 
AND section='5' 
Order by barno 

(順便說一句:在「GROUP BY也很innefficient,你已經在正確的謂詞引用的值)

+0

你的答案是有用的,但我想只在部分='5'行搜索,但我想根據案例編號和輸入部分的結果。 – Yash 2014-12-09 12:36:31

+0

對不起 - 我不知道你在說什麼。這些條件(案例編號,輸入輸入選擇)不在您的問題中描述。很高興指出你正確的方向,不要爲你寫代碼。 – symcbean 2014-12-09 12:38:35

+0

我明白並且沒有任何錯誤的方法可以從我身邊走出我的理念。好的部分值取決於輸出的用戶輸入,部分='5'用於搜索。我不希望section ='5'行輸出。 – Yash 2014-12-09 12:43:54

相關問題