2012-11-22 64 views
0

我试图写这样的语句:SQL Server语句不正确的语法附近权利?

SELECT 
    TBL_CS_LINKS.LINK_ID, 
    TBL_CS_LINKS.LINK_NAME, 
    TBL_CS_LINKS.LINK_URL, 
    (SELECT COUNT(*) 
     FROM TBL_CS_TEMP_CLICK 
     WHERE TBL_CS_TEMP_CLICK.LINK_ID = 1) 
FROM TBL_CS_LINKS 
join right TBL_CS_TEMP_CLICK 
    on TBL_CS_LINKS.LINK_ID = TBL_CS_TEMP_CLICK.LINK_ID 
WHERE 
    (CHARINDEX('s', TBL_CS_LINKS.LINK_URL) > 0) OR 
    (CHARINDEX('s', TBL_CS_LINKS.LINK_NAME) > 0) 
order by TBL_CS_LINKS.LINK_NAME 

,它给我一个错误:

消息156,级别15,状态1,行4
附近有语法错误关键字“正确”。

可能是什么问题?

谢谢!

回答

4

你得到了错误的关键字顺序。

这是

right join 
left join 

right outer join 
left outer join 
2

您错误地使用了正确的关键字。请检查以下是否正确使用它

SELECT TBL_CS_LINKS.LINK_ID, 
     TBL_CS_LINKS.LINK_NAME, 
     TBL_CS_LINKS.LINK_URL, 
     (SELECT COUNT(*) FROM TBL_CS_TEMP_CLICK WHERE TBL_CS_TEMP_CLICK.LINK_ID = 1) 
FROM TBL_CS_LINKS 
right join TBL_CS_TEMP_CLICK 
on TBL_CS_LINKS.LINK_ID = TBL_CS_TEMP_CLICK.LINK_ID 

WHERE (CHARINDEX('s', TBL_CS_LINKS.LINK_URL) > 0) OR 
     (CHARINDEX('s', TBL_CS_LINKS.LINK_NAME) > 0) 
order by TBL_CS_LINKS.LINK_NAME 
+0

你应该解释一下什么是错的原始查询。 –

+0

解释了这个问题。谢谢 – AnandPhadke

相关问题