If a variable will always be a number, is there a performace loss by putting it in inverted commas?
"SELECT prod.product_name FROM prod WHERE prod.id = '$id'";
No, you won’t have any performance loss by putting them inside inverted commas. But do take care of sql injections in such kind of queries. Also note that performance means many things, you’ve to be specific. Generally, it works fine.