Я не гуру SQL или что-то еще, но мое понимание объединения состоит в том, чтобы объединить два запроса в один набор записей. По виду вашего запроса вы пытаетесь объединить несколько таблиц вместе для записей в один запрос и вставить втаблица, в этом случае вы должны использовать INNER JOIN
или, возможно, LEFT JOIN
или RIGHT JOIN
, в зависимости от того, могут ли ваши другие таблицы не иметь данных для записей и могут быть пустыми.
Другая проблема связана с вашей строкойCONCAT.У вас нет пробелов в конце ваших строк, поэтому они равны DDTableValues
вместо DDTable Values
В любом случае это больше похоже на запрос, который вы ищете:
INSERT INTO DDTable ([NewMember.ApplicantName], [NewMember.ApplicationNo], [NewCustomer.ApplicationNo], [NewCustomer.PlanName], [NewCustomer.AccountNo], [NewCustomer.InvestmentAmount], [Deposit.InvestmentAmount], [NewMember.ProcessingFee], [NewCustomer.ProcessingFee], [NewMember.IntroducerName], [NewMember.IntroducerCode])
SELECT NewMember.ApplicantName, NewMember.ApplicationNo, NewCustomer.ApplicationNo, NewCustomer.PlanName, NewCustomer.AccountNo, NewCustomer.InvestmentAmount, Deposit.InvestmentAmount, NewMember.ProcessingFee, NewCustomer.ProcessingFee, NewMember.IntroducerName, NewMember.IntroducerCode
FROM NewMember
INNER JOIN NewCustomer ON NewMember.<identifier> = NewCustomer.<identifier>
INNER JOIN Deposit ON NewMember.<identifier> = Deposit.<identifier>
WHERE NewCustomer.OpeningDate = <date> AND Deposit.Date = <date> AND NewMember.JoiningDate = <date>
<identifier>
относится к полю в таблицах, чтобы связать все записи вместе, будь то CustomerID или MemberID или что-то еще.
Примечание. Еще одна вещь, которую я только что заметил, - это ваш список VALUES, который вы используете с именем таблицы, период и имя поля;Я не знаю, действительно ли имена полей ваших таблиц на самом деле «NewMember.ApplicantName» или вы просто поместили это в свой пример, я не совсем уверен, что MSACCESS допускает точки в именах полей, и в этом случае ваш список VALUES должен выглядеть более
INSERT INTO DDTable ([ApplicantName], [ApplicationNo], [PlanName], [AccountNo], [InvestmentAmount], [ProcessingFee], [IntroducerName])
Ваш список ЗНАЧЕНИЙ также содержит много повторяющихся полей, например,
NewMember.ApplicationNo AND NewCustomer.ApplicationNo
NewMember.ProcessingFee AND NewCustomer.ProcessingFee
NewCustomer.InvestmentAmount AND Deposit.InvestmentAmount
Если так, в зависимости от того, как названы ваши поля, это может быть проблемой.это нужно решать.