আসলে, যখন পার্সার একটি শব্দ পায় যা একটি বিল্ট-ইন ফাংশনের নাম, তবে এটি নির্ধারণ করতে হয় যে নামটি ফাংশন কল কিনা অথবা নন-এক্সপ্রেশন রেফারেন্স যেন টেবিল বা কলাম নাম। নিচের কোয়েরিগুলো বিবেচনা করুন:
1. SELECT SUM(salary) FROM employee; 2. CREATE TABLE sum (i int);
প্রথম কোয়েরিতে SUM একটি ফাংশন কল রেফারেন্স এবং দ্বিতীয় কোয়েরিতে এটি টেবিল নাম রেফারেন্স।
পার্সার নিচের নিয়মগুলো অনুসরণ করে তাদের নাম ফাংশন কল হিসেবে ব্যবহৃত হচ্ছে কিনা অথবা নন-রেফারেন্স কনটেক্সটে আইডেন্টিফায়ার হিসেবে ব্যবহৃত হচ্ছে কিনা তা আলাদা করতে:
- নিয়ম ১ - এক্সপ্রেশনে নামটিকে ফাংশন কল হিসেবে ব্যবহার করতে হলে নাম এবং পরের ( প্যারেন্থেসিস ক্যারেক্টারের মধ্যে কোনো হোয়াইটস্পেস থাকতে পারবে না।
- নিয়ম ২ - বিপরীতভাবে, ফাংশন নামকে আইডেন্টিফায়ার হিসেবে ব্যবহার করতে হলে সেটি অবশ্যই অবিলম্বে প্যারেন্থেসিস দ্বারা ফলো করা যাবে না।