Ниже приведен запрос на добавление в MS Access. Мне нужно перенести его на SQL Server, который я могу сделать. Но у меня есть вопрос относительно «!» используемый в запросе, созданном из конструктора запросов. Мне не удалось понять дизайн.Перенос запроса доступа MS Access к SQL Server
INSERT INTO [TABLEX] (COL1, COL2, COL3, COL4)
SELECT [TableA].[COL1], [TableA].[COL2], [TableA].[COL5],
IIf(Left([COL3],4) In (YYYY,XXXX),"YYYY - XXXX --- XXXXXX",[Name]) AS Name
FROM [TableC], [TableA] INNER JOIN [TableB] ON [TableA].[COL1] = [TableB].[COL1]
WHERE (((Left([COL3],4))<>"XXXX" And (Left([COL3],4))<>"YYYY" And
(Left([COL3],4))=[TableC]![COL1]) AND (([TableC].COL2)="-") AND (([TableA].[COL4])<>"MMM")) OR
(((Left([COL3],4))="XXXX" And (Left([COL3],4))=[TableC]![COL1]) AND (([TableC].COL2)="-") AND
(([TableA].[COL4])="ZZZ")) OR (((Left([COL3],4))="YYYY" And (Left([COL3],4))=[TableC]![COL1]) AND (([TableC].COL2)="-"));
Может ли кто-нибудь сообщить мне, что заявление T-SQL может выполнить ту же работу. Ниже приведены случаи, когда они появляются.
(левый ([COL3], 4)) = [TableC]! [COL1])
Любые советы будут иметь большую помощь. Спасибо
Попробуйте заменить '!' с '.' например, в '(([TableC] .COL2) = "-")'. – DBNull
Я знаю эту опцию, мне просто интересно, что означает этот оператор в запросе desgin, откуда он сгенерирован – AllPigsREqual
Я думаю, что это означает то же самое в Access SQL, что и точка в TSQL. Когда я использовал Access, я бы набрал имя таблицы, за которым следует восклицательный знак, и появится список имен полей. – DBNull