BookmarkSubscribeRSS Feed
cons
Calcite | Level 5

Hi everybody.

 

Where is the syntax error?

 

PROC SQL;

  SELECT p.*,c.unicost,s.quantity

  FROM product,cost,sales

  WHERE product.item = cost.item AND product.item = sales.item;

QUIT;

 

Best regards, Cons.

 

 

2 REPLIES 2
Reeza
Super User

You use alias in your select clause (p/c/s) but don't assign any aliases to your tables. 

 

PS it's usually more efficient to specify join type and use ON rather than WHERE. 

PGStats
Opal | Level 21

@Reeza, I agree with your diagnostic of OP's syntax error.

 

However, a simple WHERE clause is just as efficient as the ON clause of an INNER JOIN. One is simply translated into the other, when possible. I do prefer the JOIN syntax because it is more explicit, but it isn't more efficient.

PG

SAS Innovate 2025: Register Now

Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1474 views
  • 0 likes
  • 3 in conversation