[英]MSSQL/SQL Query condition error
我的grails控制器上有以下2個SQL查詢:
def query1 = sql.rows("select abc from table_one where cond = 1")
query1的返回結果給了我[{abc=5}]
def query2 = sql.rows("select req from table_two where abc = " +query1)
我在嘗試運行query2時遇到錯誤,我也不知道為什么。
列名abc
存在於table_one
和table_two
,我試圖從table_one
獲取abc
的值,從而cond = 1
,並將其分配給變量query1。
與QUERY2,我想獲得的值req
從table_two
,其中的價值abc
在table_two
是等於QUERY1的價值。
有什么幫助嗎?
來自query2的錯誤消息:
Message:Unclosed quotation mark after the character string '[abc:5]'.
為什么不使用類似以下查詢的內容:
select table_two.req
from table_one,
table_two
where table_one.cond = 1
and table_one.abc = table_two.abc
像這樣聯接表可以使您在一個查詢中執行查詢,這通常既更高效又更正確(即,數據庫表在兩個查詢之間不會改變)。
您使用INNER JOIN
加入表格
select b.req
from table_one a
INNER JOIN table_two b
ON a.abc = b.abc
where a.cond = 1
以下語法是ANSI SQL-92
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.