我继续在')附近获得不正确的语法

时间:2015-09-24 14:32:15

标签: sql sql-server

我已尝试过所有内容,但无法理解为什么我在“'”附近得到的语法不正确。我虽然这个查询应该有效:

SELECT DISTINCT dbo.v_PUSH_CUSTOMER_MASTER.CustomerID,
                dbo.v_PUSH_CUSTOMER_MASTER.Name,
                dbo.v_PUSH_CUSTOMER_MASTER.AccountNumber,
                dbo.v_PUSH_CUSTOMER_MASTER.City,
                dbo.v_PUSH_CUSTOMER_MASTER.State,
                dbo.v_PUSH_CUSTOMER_MASTER.Profile
FROM dbo.v_PUSH_CUSTOMER_MASTER
LEFT OUTER JOIN dbo.tbl_PUSH_CustomerContacts ON dbo.v_PUSH_CUSTOMER_MASTER.CustomerID = dbo.tbl_PUSH_CustomerContacts.CustomerID COLLATE SQL_Latin1_General_CP1_CI_AS
WHERE (v_PUSH_CUSTOMER_MASTER.CustomerID LIKE '%221200%')
  OR (v_PUSH_CUSTOMER_MASTER.AccountNumber LIKE '%221200%') (v_PUSH_CUSTOMER_MASTER.State COLLATE SQL_Latin1_General_CP1_CI_AS IN
                                                               (SELECT STATE
                                                                FROM tbl_PUSH_Users_States
                                                                WHERE UserID = 'dhudgens'))
ORDER BY v_PUSH_CUSTOMER_MASTER.Name

似乎问题最终在这里:

(v_PUSH_CUSTOMER_MASTER.State COLLATE SQL_Latin1_General_CP1_CI_AS IN                                                                (选择状态                                                                 FROM tbl_PUSH_Users_States                                                                 用户ID =' dhudgens')

1 个答案:

答案 0 :(得分:4)

OR (v_PUSH_CUSTOMER_MASTER.AccountNumber LIKE '%221200%') (...
                                                          ^

这是问题,您在AND条件中遗漏了ORWHERE