use是保留字,加个中括号即可:
SELECT W.ID, W.TreeParent, W.UserCode, W.Name, W.ShortName, W.PinYin,W.Up_Limit, W.Down_Limit, W.memo, W.Mode,Wuse,
Sum(WS.Number) AS SumNumber, Sum(WS.Total) AS SumTotal FROM Ware AS W LEFT JOIN WareStock AS WS ON W.ID = WS.WareID
GROUP BY W.ID, W.TreeParent, W.UserCode, W.Name, W.ShortName, W.PinYin, W.Up_Limit, W.Down_Limit, W.memo, W.Mode,W.[use]

解决方案 »

  1.   

    兄弟们所言极是,还有一个错误:
    服务器: 消息 306,级别 16,状态 2,行 1
    不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。
    就是那个MEMO字段,是NTEXT类型,在ACCESS下可以的,在SQLSERVER下就不行
      

  2.   

    上面的SQL语句用到了MEMO(NTEXT)字段就会报错:服务器: 消息 306,级别 16,状态 2,行 1
    不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。这个语句在ACCESS下可以执行,在SQLSERVER下需要怎么表示呢?
      

  3.   

    不能比较或排序ntext数据类型,但可以把它转换成varchar或nvarchar来作:
    SELECT W.ID, W.TreeParent, W.UserCode, W.Name, W.ShortName, W.PinYin,W.Up_Limit, W.Down_Limit, convert(varchar(4000),W.memo) memo, W.Mode,Wuse,
    Sum(WS.Number) AS SumNumber, Sum(WS.Total) AS SumTotal FROM Ware AS W LEFT JOIN WareStock AS WS ON W.ID = WS.WareID
    GROUP BY W.ID, W.TreeParent, W.UserCode, W.Name, W.ShortName, W.PinYin, W.Up_Limit, W.Down_Limit, convert(varchar(4000),W.memo), W.Mode,W.use
      

  4.   

    SELECT W.ID, W.TreeParent, W.UserCode, W.Name, W.ShortName, W.PinYin,W.Up_Limit, W.Down_Limit, cast(W.memo as varchar(8000)), W.Mode,W.[use],
    Sum(WS.Number) AS SumNumber, Sum(WS.Total) AS SumTotal 
    FROM Ware AS W LEFT JOIN WareStock AS WS ON W.ID = WS.WareID
    GROUP BY W.ID, W.TreeParent, W.UserCode, W.Name, W.ShortName, W.PinYin, W.Up_Limit, W.Down_Limit, cast(W.memo as varchar(8000)), W.Mode,W.[use]