【发布时间】:2015-12-31 04:20:20
【问题描述】:
我想选择 DISTINCT StudentID 或记录,但查询显示以下错误
图像数据类型不能选择为 DISTINCT,因为它不是 可比的
这是我的代码:
ALTER PROCEDURE [dbo].[uspSELECTALL]
AS
BEGIN
SET NOCOUNT ON;
SELECT DISTINCT(SI.StudentID),SI.Surname,SI.FirstName,SI.MiddleName, SI.StudAddress ,
SI.BirthDay,SI.Gender, SI.Nationality, SI.BirthPlace,
SI.TelNum,SI.SchoolWhereGraduated ,
SI.DatesWhenGraduated, SI.SchoolLastAttended,
SI.Note,SI.StudImage,
PI.Father_FirstName,PI.Father_LastName,
PI.Father_MI,PI.Father_Occupation,
PI.Father_TelNUm, PI.Mother_FirstName, PI.Mother_LastName,
PI.Mother_MI,PI.Mother_Occupation,PI.Mother_TelNum,
PI.Contact_FirstName,PI.Contact_LastName,PI.Contact_MI,
PI.Contact_Mobile,PI.Contact_TelNum,PI.Contact_Address,
SH.SchoolYear,SH.Levels,SH.Section,SH.DateEnrolled
FROM StudentInformation SI
JOIN StudentHistory SH
ON SI.StudentID = SH.StudentID
JOIN ParentInformation PI
ON PI.ParentID = SI.ParentID
END
【问题讨论】:
-
恐怕如果studentid是主键,那么同一个ID怎么会有多个值呢?
-
@utility ,是的 studentid 是主键,当学生有两个或更多历史时,这发生在我的
datagridview中。像这样。 Table -
为什么你这样做
DISTINCT(SI.StudentID)而不是这个? -->DISTINCT SI.StudentID,?????????
标签: sql-server vb.net sql-server-2008-r2