我的这段sql语句哪有错啊?错误为: 当没有用 EXISTS 引入子查询时,在选择列表中只能指定一个表达式
我的这段sql语句为什么有错?IE报错为:
错误为: 当没有用 EXISTS 引入子查询时,在选择列表中只能指定一个表达式。
-----------------------------------------------------------------------
SELECT
A.Company_ID,A.Company_Name,B.Pub_Position_ID,B.Company_ID, C.Academic_Credentials_Code
FROM
Company_Info AS A
Company_Pub_Position AS B
Sub_Academic_Credentials1 AS C
WHERE
A.Company_ID=B.Company_ID
AND
B.Pub_Position_Academic=C.Academic_Credentials_Code
AND
B.Pub_Position_ID IN (SELECT D.Company_Name,C.Pub_Position_Sql_Search_Work_Area,C.Sql_Pub_Function_Position,C.Pub_Position_Industry,C.Pub_Position_Date FROM Company_Info AS D,Company_Pub_Position AS C WHERE .....)
问题点数:0、回复次数:5Top
1 楼parsely(林琳)回复于 2004-08-03 19:19:01 得分 0
我估计是这个地方, 嵌套
B.Pub_Position_ID IN (SELECT D.Company_Name,C.Pub_Position_Sql_Search_Work_Area,C.Sql_Pub_Function_Position,C.Pub_Position_Industry,C.Pub_Position_Date FROM Company_Info AS D,Company_Pub_Position AS C WHERE .....)
Top
2 楼yjkarmon()回复于 2004-08-03 20:18:48 得分 0
将B.Pub_Position_ID IN (...)
改为B.pub_Position Exists (....)Top
3 楼frankwong(黄梓钿)回复于 2004-08-03 20:31:28 得分 0
from 子句后面几个表要使用逗号分隔Top
4 楼frankwong(黄梓钿)回复于 2004-08-03 20:32:52 得分 0
IN (SELECT D.Company_Name,C.Pub_Position_Sql_Search_Work_Area,C.Sql_Pub_Function_Position,C.Pub_Position_Industry,C.Pub_Position_Date FROM Company_Info AS D,Company_Pub_Position AS C WHERE .....)
--in子句后面的记录集必须只能一个字段Top
5 楼jszj(老板说mis部不是赚钱的部门...)回复于 2004-08-05 10:22:18 得分 0
B.Pub_Position_ID IN (SELECT D.Company_Name,C.Pub_Position_Sql_Search_Work_Area,C.Sql_Pub_Function_Position,C.Pub_Position_Industry,C.Pub_Position_Date FROM Company_Info AS D,Company_Pub_Position AS C WHERE .....)
这里,在select后只能跟一个字段,而且,这个字段的类型必须和B.Pub_Position_ID的类型是一样的
再说,这里的Company_Pub_Position AS C也不妥,因为前边有了C,所以最好改为F等其它任何一个而且不要和以前的重复Top




