簡體   English   中英

帶有INNER JOIN的SQL SELECT錯誤

[英]Error in SQL SELECT with INNER JOIN

因此,基本上,我有兩個表,分別稱為“ dadoscatalogo”和“ palavras_chave”,具有共同的字段“ patrimonio”,這是“ dadoscatalogo”的主鍵。

我正在使用Servlet通過這些表連接到數據庫,並傳遞查詢以根據用戶定義的某些搜索條件來搜索條目。

現在,由於用戶可以基於兩個表中存在的信息搜索條目,因此我需要執行INNER JOIN ,然后使用WHERE來搜索該信息。 我也在使用LIKE ,因為用戶可能只傳遞部分信息,而不是全部。

因此,為了進行全面測試,我嘗試向其傳遞一些參數以供使用,然后看看它如何進行。 經過一些調試后,我發現查詢中存在一些錯誤。 但我似乎無法確切指出它是什么。

這是測試查詢:

SELECT dadoscatalogo.patrimonio
FROM dadoscatalogo 
  INNER JOIN palavras_chave 
    ON dadoscatalogo.patrimonio=palavras_chave.patrimonio 
WHERE dadoscatalogo.patrimonio LIKE '%' 
  AND dadoscatalogo.titulo LIKE '%tons%' 
   OR palavras_chave.palchave LIKE '%programming%';

因此,基本上,我要對此查詢執行的操作是,從“ dadoscatalogo”中獲取所有主鍵,這些主鍵與包含“噸”的“ titulo”或包含“ programming”的“ palchave”鏈接到記錄。

PS。 很抱歉,您的名字不是英文的,希望不會太讓人分心。

編輯:現在,表沒有太多:

這是dadoscatalogo表格: http ://gyazo.com/fdc848da7496cea4ea2bcb6fbe81cb25

這是palavras_chave表: http ://gyazo.com/6bb82f844caebe819f380e515b1f504e

當他們加入時,我希望它有4條記錄,它將在dadoscatalogo中獲得patrimonio = 2的記錄(在titulo中具有“噸”),並且獲得palchave = programming的記錄(其具有patrimonio = 1) )

根據我的理解運行以下查詢:

 SELECT dadoscatalogo.patrimonio
FROM dadoscatalogo 
  INNER JOIN palavras_chave 
   ON dadoscatalogo.patrimonio=palavras_chave.patrimonio 
WHERE dadoscatalogo.titulo LIKE '%tons%' 
  OR palavras_chave.palchave LIKE '%programming%';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM