最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

sql - I have a syntax error and I can't get why - Stack Overflow

programmeradmin8浏览0评论
SELECT c.LocationNum, c.OwnerNum, o.FirstName, o.LastName
FROM CondoUnit c
JOIN Owner o
ON c.OwnerNum=o.OwnerNum; 

Expected to see for every condo locationnum, ownernum, firstname, last name. Access says it is a syntax error

SELECT c.LocationNum, c.OwnerNum, o.FirstName, o.LastName
FROM CondoUnit c
JOIN Owner o
ON c.OwnerNum=o.OwnerNum; 

Expected to see for every condo locationnum, ownernum, firstname, last name. Access says it is a syntax error

Share Improve this question edited Nov 18, 2024 at 22:37 Bergi 667k161 gold badges1k silver badges1.5k bronze badges asked Nov 18, 2024 at 22:10 Diana GrigoriantsDiana Grigoriants 211 bronze badge 5
  • 1 Please tag or mention exactly which SQL syntax this is. – phuzi Commented Nov 18, 2024 at 22:23
  • 1 Not to familiar with the access sql dialect. But what happens if you leave out the 'c' and '0' and use the table names instead? Furter more... doesn't access give a hint on what is going on? Just the mention of a syntax error? – Peter Commented Nov 18, 2024 at 22:25
  • 1 I think you're missing the AS for the table aliases... FROM CondoUnit AS c JOIN Owner AS o - support.microsoft/en-gb/office/… – phuzi Commented Nov 18, 2024 at 22:31
  • can you also check just by selecting the columns on their own i.e without joining and check if the table name and each column name is the expected one? – samhita Commented Nov 18, 2024 at 22:52
  • 2 @phuzi No. MS-Access also support alias without keyword As. Problem is in join type not defined. In access there are only three join type ` (1) Inner Join (2) Left Join (3) Right Join. So, OP must specify join type. – Harun24hr Commented Nov 19, 2024 at 7:49
Add a comment  | 

1 Answer 1

Reset to default 3

The Access database engine does not accept JOIN alone and complains "Syntax Error in FROM clause" when encountering it. You must always specify the type of join you want (INNER, LEFT, or RIGHT).

I think you want INNER JOIN:

SELECT c.LocationNum, c.OwnerNum, o.FirstName, o.LastName
FROM CondoUnit c
INNER JOIN Owner o
ON c.OwnerNum=o.OwnerNum;
发布评论

评论列表(0)

  1. 暂无评论