SQLServer选择“无效列名”但列存在

时间:2018-04-02 14:01:02

标签: sql-server-2008

这可能很简单,但我完全难过了。这是我第一次进入SQLSever,我有一个简单的查询如下......

SELECT
    c.ClientID,
    c.FirstName,
    c.LastName,
    FORMAT(pm.date, 'd', 'en-US'),
    'Payment' AS 'Description',
    FORMAT(0, 'C', 'en-US') AS 'Fee',
    FORMAT(pm.amount, 'C', 'en-US') AS 'Paid',
    'WIP' AS 'Payment Type' 
FROM dbo.payments_made pm
LEFT JOIN dbo.clients c
    ON c.ID = pm.ClientID
LEFT JOIN dbo.payment_types pt
    ON pm.PaymentType = pt.ID
WHERE pm.business = 7

当我执行此查询时,我得到以下内容:

Error Message 但是,查看表定义,ClientID列实际存在。看到这里....

Table Definitions

我对发生的事情感到难过。应该很简单。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

您的ClientID位于客户端表中的付款表中,它只是名为ID(基于您的加入)

您需要将ClientID更改为ID或更改c。到下午。

这样:

SELECT c.ID
// or 
SELECT pm.ClientID