J'essaie d'utiliser un inner join
une vue et une table utilisant la requête suivante
SELECT
AcId, AcName, PldepPer, RepId, CustCatg, HardCode, BlockCust, CrPeriod, CrLimit,
BillLimit, Mode, PNotes, gtab82.memno
FROM
VCustomer
INNER JOIN
vcustomer AS v1 ON gtab82.memacid = v1.acid
WHERE (AcGrCode = '204' OR CreDebt = 'True')
AND Masked = 'false'
ORDER BY AcName
et l'erreur est
missing FROM-clause entry for table "gtab82"
SELECT
AcId, AcName, PldepPer, RepId, CustCatg, HardCode, BlockCust, CrPeriod, CrLimit,
BillLimit, Mode, PNotes, gtab82.memno
FROM
VCustomer AS v1
INNER JOIN
gtab82 ON gtab82.memacid = v1.AcId
WHERE (AcGrCode = '204' OR CreDebt = 'True')
AND Masked = 'false'
ORDER BY AcName
Généralement, vous utilisez un alias pour un nom de table uniquement lorsque vous devez préfixer une colonne avec le nom de table en raison des noms de colonnes en double dans les tables jointes et que le nom de la table est long ou lorsque la table est jointe à elle-même. Dans votre cas, vous utilisez un alias pour VCustomer
mais vous ne l'utilisez que dans la clause ON
pour des raisons incertaines. Vous voudrez peut-être examiner cet aspect de votre code.
Parce que cette table gtab82 n'est pas dans votre clause FROM ou JOIN. Vous faites référence à la table gtab82 dans les cas suivants: gtab82.memno et gtab82.memacid