简体   繁体   中英

Syntax error (missing operator) in query expression

I'm using ms-access for school project, and i need to get data from two table.

I tried to do this sql query:

SELECT m.MessageID, m.MessageSubject, m.MessageContent, m.MessageIsRead, 
    m.MessageSendDate, m.MessageDeletedBy,
    s.UserFisrtName + '' + s.UserLastName AS Sender,
    r.UserFisrtName + '' + r.UserLastName AS Reciver
FROM Messages m
INNER JOIN Users AS s ON s.UserID = m.MessageSenderID
INNER JOIN Users AS r ON r.UserID = m.MessageReciverID

I get an error:

Syntax error (missing operator) in query expression 's.UserID = m.MessageSenderID INNER JOIN Users AS r ON r.UserID = m.MessageReciverI'

I already have a problem with this issue Here

Any suggestion?

You code does not look like MS Access. I would expect:

SELECT m.MessageID, m.MessageSubject, m.MessageContent, m.MessageIsRead, 
       m.MessageSendDate, m.MessageDeletedBy,
       (s.UserFirstName & s.UserLastName) AS Sender,
       (r.UserFirstName & r.UserLastName) AS Reciver
FROM (Messages as m INNER JOIN
      Users as s
      ON s.UserID = m.MessageSenderID
     ) INNER JOIN
     Users as r
     ON r.UserID = m.MessageReciverID;

There is no reason to put an empty string between two names. If you want to put a space, for instance, then it would look like:

       (s.UserFisrtName & " " & s.UserLastName) AS Sender,

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM