فہرست کا خانہ
اگر آپ کچھ عرصے سے اس بلاگ کی پیروی کر رہے ہیں، تو آپ کو Google Sheets کے لیے QUERY فنکشن یاد ہو سکتا ہے۔ میں نے اس کا ذکر کچھ معاملات کے ممکنہ حل کے طور پر کیا۔ لیکن یہ اس کی پوری صلاحیت کو ننگا کرنے کے لیے کافی نہیں ہیں۔ آج، وقت آگیا ہے کہ ہم اس سپریڈ شیٹس کے سپر ہیرو کو صحیح طریقے سے جانیں۔ اور اندازہ لگائیں کہ - ایک اتنا ہی قابل ذکر ٹول بھی ہوگا :)
کیا آپ جانتے ہیں کہ Google Sheets QUERY فنکشن کو اسپریڈ شیٹس میں سب سے طاقتور سمجھا جاتا ہے؟ اس کا عجیب و غریب نحو دسیوں مختلف کارروائیوں کی حمایت کرتا ہے۔ آئیے کوشش کریں اور اس کے حصوں کو ایک بار اور ہمیشہ کے لیے سیکھیں، کیا ہم سیکھیں گے؟
Google Sheets QUERY فنکشن کا نحو
پہلی نظر میں، Google Sheets QUERY ہے 1 اختیاری اور 2 مطلوبہ دلائل کے ساتھ صرف ایک اور فنکشن:
=QUERY(data, query, [headers])- data پروسیس کرنے کی حد ہے۔ درکار ہے۔ یہاں سب کچھ واضح ہے۔
نوٹ۔ یہاں صرف ایک چھوٹی یاد دہانی گوگل کے ذریعہ قائم کی گئی ہے: ہر کالم میں ایک قسم کا ڈیٹا ہونا چاہئے: متنی، یا عددی، یا بولین۔ اگر مختلف قسمیں ہیں، تو QUERY اس کے ساتھ کام کرے گا جو سب سے زیادہ ہوتا ہے۔ دوسری اقسام کو خالی سیل سمجھا جائے گا۔ عجیب، لیکن ذہن میں رکھو.
- استفسار ڈیٹا پر کارروائی کرنے کا طریقہ ہے۔ درکار ہے۔ یہیں سے تمام تفریح شروع ہوتی ہے۔ Google Sheets QUERY فنکشن اس دلیل کے لیے ایک خاص زبان استعمال کرتا ہے: Google Visualization APIمعیار
- نتیجے کے لیے ایک جگہ منتخب کریں
- داخل کریں نتیجہ کو QUERY فارمولہ یا بطور قدر
میں مذاق نہیں کر رہا، خود ہی دیکھ لیں۔ اگرچہ اس GIF کو تیز کیا گیا تھا، لیکن مجھے تمام معیارات کو ٹھیک کرنے اور نتیجہ حاصل کرنے میں ایک منٹ سے بھی کم وقت لگا:
اگر آپ کافی متجسس ہیں تو، یہاں ایک تفصیلی ہے ویڈیو دکھا رہی ہے کہ ایڈ آن کیسے کام کرتا ہے:
مجھے امید ہے کہ آپ ایڈ آن کو موقع دیں گے اور اسے Google Workspace Marketplace سے حاصل کریں گے۔ شرمندہ نہ ہوں اور اپنے تاثرات کا اشتراک کریں، خاص طور پر اگر اس کے بارے میں کوئی ایسی چیز ہے جو آپ کو پسند نہیں ہے۔
نیز، اس کے ٹیوٹوریل صفحہ یا ہوم پیج کو بھی بلا جھجھک دیکھیں۔
<3>>>>>>>>>>>>استفسار کی زبان۔ یہ ایس کیو ایل کی طرح لکھا گیا ہے۔ بنیادی طور پر، یہ خاص شقوں (کمانڈز) کا ایک سیٹ ہے جو فنکشن کو بتانے کے لیے استعمال کیا جاتا ہے کہ کیا کرنا ہے: سلیکٹ، گروپ بذریعہ، حد، وغیرہ۔نوٹ۔ پوری دلیل کو دوہرے اقتباسات میں بند کیا جانا چاہیے۔ اقدار، اپنی باری میں، کوٹیشن مارکس میں لپیٹ دی جائیں۔
اب آئیے ان شقوں اور جو کچھ بھی کرتے ہیں اس کی گہرائی میں کھوج کریں۔
Google Sheets QUERY فارمولوں میں استعمال شدہ شقیں
استفسار کی زبان 10 شقوں پر مشتمل ہوتی ہے۔ وہ پہلی نظر میں خوفزدہ ہو سکتے ہیں، خاص طور پر اگر آپ SQL سے واقف نہیں ہیں۔ لیکن میں وعدہ کرتا ہوں کہ ایک بار جب آپ ان کو جان لیں گے تو آپ کو ایک طاقتور اسپریڈ شیٹ ہتھیار ملے گا۔
میں ہر ایک شق کا احاطہ کرنے جا رہا ہوں اور خیالی طلباء اور ان کے کاغذی مضامین کی اس فہرست کو استعمال کرتے ہوئے فارمولہ کی مثالیں فراہم کروں گا۔ :
جی ہاں، میں ان عجیب و غریب لوگوں میں سے ہوں جو سوچتے ہیں کہ پلوٹو کو سیارہ ہونا چاہیے :)
ٹپ۔ ایک Google Sheets QUERY فنکشن میں کئی شقیں استعمال کی جا سکتی ہیں۔ اگر آپ ان سب کو گھوںسلا بناتے ہیں، تو یقینی بنائیں کہ اس مضمون میں ان کی ظاہری شکل کی ترتیب پر عمل کریں۔ 11کسی اور شیٹ یا ٹیبل سے۔
مثال 1. تمام کالم منتخب کریں
ہر ایک کالم کو بازیافت کرنے کے لیے، ستارے کے ساتھ منتخب کریں استعمال کریں – منتخب کریں *<2
=QUERY(Papers!A1:G11,"select *")
15>
ٹپ۔ اگر آپ کو چھوڑ دیتے ہیں پیرامیٹر کو منتخب کریں، تو Google Sheets QUERY تمام کالموں کو بطور ڈیفالٹ واپس کر دے گا:
=QUERY(Papers!A1:G11)
مثال 2۔ مخصوص کالم منتخب کریں
صرف مخصوص کالم کھینچنے کے لیے ، انہیں منتخب کریں شق کے بعد درج کریں:
=QUERY(Papers!A1:G11, "select A,B,C")
ٹپ۔ دلچسپی کے کالم اسی ترتیب سے کاپی کیے جائیں گے جس کا آپ فارمولے میں ذکر کرتے ہیں:
=QUERY(Papers!A1:G11, "select C,B,A")
Google Sheets QUERY – جہاں شق
Google شیٹس QUERY جہاں کا استعمال اس ڈیٹا کے لیے شرائط طے کرنے کے لیے کیا جاتا ہے جسے آپ حاصل کرنا چاہتے ہیں۔ دوسرے لفظوں میں، یہ ایک فلٹر کے طور پر کام کرتا ہے۔
اگر آپ اس شق کو استعمال کرتے ہیں، تو Google Sheets کے لیے QUERY فنکشن ان اقدار کے لیے کالم تلاش کرے گا جو آپ کی شرائط پر پورا اترتے ہیں اور تمام مماثلتیں آپ کو واپس لاتے ہیں۔
ٹپ. جہاں منتخب شق کے بغیر کام کرسکتا ہے۔
معمول کی طرح، حالات بتانے کے لیے، آپ کے لیے خصوصی آپریٹرز کے سیٹ ہیں:
- سادہ موازنہ آپریٹرز ( عددی اقدار کے لیے ): =, , >, >=, <, <=
- پیچیدہ موازنہ آپریٹرز ( سٹرنگز کے لیے ): پر مشتمل ہے، شروع ہوتا ہے، ختم ہوتا ہے کے ساتھ، میچز، != (مماثل نہیں ہے / کے برابر نہیں ہے)، جیسے ۔
- منطقی آپریٹرز کو کئی شرائط کو یکجا کرنے کے لیے : اور، یا، نہیں ۔
- آپریٹرز برائے خالی/ خالی نہیں ہے : نیل ہے، خالی نہیں ہے ۔
ٹپ۔ اگر آپ اتنی بڑی تعداد میں آپریٹرز سے دوبارہ نمٹنے کے لیے پریشان یا پریشان ہیں، تو ہم آپ کو محسوس کرتے ہیں۔ ہمارے متعدد Vlookup میچز تمام مماثلتیں تلاش کریں گے اور اگر ضرورت ہو تو آپ کے لیے Google Sheets میں QUERY فارمولے بنائیں گے۔
آئیے دیکھتے ہیں کہ یہ آپریٹرز فارمولوں میں کیسا برتاؤ کرتے ہیں۔
مثال 1۔ کہاں نمبروں کے ساتھ
میں اپنی گوگل شیٹس میں کہاں شامل کروں گا۔ ان سیاروں کے بارے میں معلومات حاصل کرنے کے لیے اوپر سے سوال کریں جن میں 10 سے زیادہ چاند ہیں:
=QUERY(Papers!A1:G11,"select A,B,C,F where F>=10")
ٹِپ۔ میں نے کالم F کا بھی تذکرہ کیا تاکہ صرف یہ یقینی بنایا جا سکے کہ معیار پورا ہو گیا ہے۔ لیکن یہ مکمل طور پر اختیاری ہے۔ آپ کو نتائج میں شرائط کے ساتھ کالم شامل کرنے کی ضرورت نہیں ہے:
=QUERY(Papers!A1:G11,"select A,B,C where F>=10")
مثال 2. جہاں ٹیکسٹ سٹرنگز کے ساتھ
- میں دیکھنا چاہتا ہوں تمام قطاریں جہاں گریڈ یا تو F یا F+ ہے۔ میں اس کے لیے contains آپریٹر استعمال کروں گا:
=QUERY(Papers!A1:G11,"select A,B,C,G where G contains 'F'")
نوٹ۔ اپنے متن کو کوٹیشن مارکس سے گھیرنا نہ بھولیں۔
- تمام قطاریں صرف F کے ساتھ حاصل کرنے کے لیے، صرف contains کو ایک مساوی نشان (=):
=QUERY(Papers!A1:G11,"select A,B,C,G where G="F"")
سے تبدیل کریں۔ - ان کاغذات کو چیک کرنے کے لیے جو ابھی ڈیلیور ہونے ہیں (جہاں گریڈ غائب ہے)، خالی جگہوں کے لیے کالم G چیک کریں:
=QUERY(Papers!A1:G11,"select A,B,C,G where G is null'")
مثال 3. کہاں تاریخوں کے ساتھ
اندازہ لگائیں: Google Sheets QUERY تاریخوں پر قابو پانے میں بھی کامیاب ہوگئی ہے!
چونکہ اسپریڈ شیٹس تاریخوں کو سیریل نمبرز کے طور پر اسٹور کرتی ہیں، عام طور پر، آپ کوDATE یا DATEVALUE، YEAR، MONTH، TIME، وغیرہ جیسے خصوصی فنکشنز کی مدد کا سہارا لیں۔
لیکن QUERY نے تاریخوں کے آس پاس اپنا راستہ تلاش کر لیا ہے۔ ان کو صحیح طریقے سے درج کرنے کے لیے، صرف لفظ تاریخ ٹائپ کریں اور پھر خود فارمیٹ شدہ تاریخ کو yyyy-mm-dd کے طور پر شامل کریں: تاریخ '2020-01-01'
1 جنوری 2020 سے پہلے تقریر کی تاریخ کے ساتھ تمام قطاریں حاصل کرنے کا میرا فارمولا یہ ہے:
=QUERY(Papers!A1:G11,"select A,B,C where B
مثال 4۔ کئی شرائط کو یکجا کریں
ایک معیار کے طور پر وقت کی ایک مخصوص مدت کو استعمال کرنے کے لیے، آپ کو دو شرائط کو یکجا کرنے کی ضرورت ہوگی۔
آئیے کوشش کریں اور ان کاغذات کو بازیافت کریں جو خزاں، 2019 میں فراہم کیے گئے تھے۔ پہلا معیار ایک تاریخ ہونا چاہیے کو یا 1 ستمبر 2019 کے بعد، دوسرا — 30 نومبر 2019 کو یا اس سے پہلے :
=QUERY(Papers!A1:G11,"select A,B,C where B>=date '2019-09-01' and B<=date '2019-11-30'")
یا، I ان پیرامیٹرز کی بنیاد پر پیپرز منتخب کر سکتے ہیں:
- 31 دسمبر 2019 سے پہلے ( B
) - گریڈ کے طور پر A یا A+ ہو ( G میں 'A' )
- یا B/B+ ( G میں 'B' شامل ہے )
=QUERY(Papers!A1:G11,"select A,B,C,G where B
ٹپ۔ اگر آپ کا سر پہلے ہی پھٹنے والا ہے تو ابھی ہمت نہ ہاریں۔ ایک ایسا ٹول ہے جو آپ کے لیے ان تمام فارمولوں کو بنانے کے لیے مکمل طور پر قابل ہے، چاہے معیار کی تعداد کچھ بھی ہو۔ اسے جاننے کے لیے مضمون کے آخر تک دائیں چھلانگ لگائیں۔
Google Sheets QUERY – گروپ by
Google Sheets QUERY group by کمانڈ کا استعمال قطاروں کو جوڑنے کے لیے کیا جاتا ہے۔ تاہم، آپ کو ان کا خلاصہ کرنے کے لیے کچھ مجموعی افعال کا استعمال کرنا چاہیے۔
نوٹ۔ گروپ بذریعہ ہمیشہ منتخب کریں شق کی پیروی کریں۔
بدقسمتی سے، میرے ٹیبل میں گروپ بنانے کے لیے کچھ بھی نہیں ہے کیونکہ کوئی اعادی اقدار نہیں ہیں۔ تو میں اسے تھوڑا سا ایڈجسٹ کرتا ہوں۔
فرض کریں، تمام پرچے صرف 3 طلبہ کو تیار کرنے ہیں۔ میں ہر طالب علم کو حاصل کردہ اعلیٰ ترین گریڈ تلاش کر سکتا ہوں۔ لیکن چونکہ وہ حروف ہیں، یہ MIN فنکشن ہے جس کا اطلاق مجھے کالم G:
=QUERY(Papers!A1:G11,"select A,min(G) group by A")
نوٹ پر کرنا چاہیے۔ اگر آپ منتخب کریں شق (کالم A میری مثال میں) میں کسی بھی کالم کے ساتھ مجموعی فنکشن استعمال نہیں کرتے ہیں، تو آپ کو ان سب کو گروپ <2 میں نقل کرنا ہوگا۔> شق۔
Google Sheets QUERY – Pivot
Google Sheets QUERY pivot شق دوسری طرح سے کام کرتی ہے، اگر میں ایسا کہوں۔ یہ ڈیٹا کو ایک کالم سے ایک قطار میں نئے کالموں کے ساتھ منتقل کرتا ہے، اس کے مطابق دیگر اقدار کو گروپ کرتا ہے۔ آپ اس سورس کالم سے تمام الگ الگ سالوں پر ایک سرسری نظر ڈال سکیں گے۔
نوٹ۔ جب بات پیوٹ کی ہو تو، منتخب شق میں استعمال ہونے والے ہر کالم کو ایک مجموعی فنکشن کے ساتھ احاطہ کیا جانا چاہیے۔ بصورت دیگر، اس کا تذکرہ گروپ میں آپ کے محور کی پیروی کرتے ہوئے کیا جانا چاہیے۔
یاد رکھیں، میرے ٹیبل میں اب صرف 3 طلباء کا ذکر ہے۔ میں فنکشن بنانے جا رہا ہوں مجھے یہ بتانے کے لیے کہ ہر طالب علم نے کتنی رپورٹیں بنائیں:
=QUERY(Papers!A1:G11,"select count(G) pivot A")
Google Sheets QUERY – آرڈر بذریعہ
یہ ایک بہت آسان ہے :) اس کی عادت ہے۔نتائج کو مخصوص کالموں میں اقدار کے مطابق ترتیب دیں۔
ٹپ۔ آرڈر بذریعہ استعمال کرتے وقت تمام پچھلی شقیں اختیاری ہیں۔ میں مظاہرے کے مقاصد کے لیے کم کالم واپس کرنے کے لیے select کا استعمال کرتا ہوں۔ 0 کالم B:
=QUERY(Papers!A1:G11,"select A,B,C order by B")
حد
کیا ہوگا اگر میں آپ کو بتاؤں تو آپ کو ہر ایک قطار میں لانے کی ضرورت نہیں ہے نتیجہ؟ کیا ہوگا اگر میں نے آپ کو بتایا کہ Google Sheets QUERY اپنے ملنے والی پہلی مماثلتوں کی صرف ایک خاص مقدار کو کھینچ سکتی ہے؟
ٹھیک ہے، حد شق اس میں آپ کی مدد کے لیے بنائی گئی ہے۔ یہ دیے گئے نمبر کے حساب سے واپس جانے والی قطاروں کی تعداد کو محدود کرتا ہے۔
ٹپ۔ دیگر سابقہ شقوں کے بغیر بلا جھجھک حد استعمال کریں۔ 0>
یہ شق پچھلی شق کے بالکل مخالف ہے۔ جب کہ حد آپ کو آپ کی بتائی ہوئی قطاروں کی تعداد حاصل کرتی ہے، آفسیٹ انہیں چھوڑ دیتا ہے، باقی کی بازیافت کرتا ہے۔
ٹپ۔ آفسیٹ کو بھی کسی دوسری شق کی ضرورت نہیں ہے۔
=QUERY(Papers!A1:G11,"select A,B,C,G where G is not null offset 5")
اگر آپ کوشش کرتے ہیں اور حد اور آفسیٹ دونوں کو استعمال کرتے ہیں، تو درج ذیل ہوگا:
- Offset شروع میں قطاروں کو چھوڑ دے گا۔
- Limit مندرجہ ذیل قطاریں 3 قطاریں حد 3 اگلی قطاریں لوٹاتی ہے (چوتھی سے شروع ہوتی ہے):
Google Sheets QUERY – لیبل
Google Sheets QUERY lebel command آپ کو کالموں کے ہیڈر کے نام تبدیل کرنے دیتا ہے۔
ٹپ۔ دیگر شقیں label کے لیے بھی اختیاری ہیں۔
پہلے لیبل لگائیں، اس کے بعد کالم ID اور ایک نیا نام لگائیں۔ اگر آپ کچھ کالموں کا نام تبدیل کرتے ہیں تو کالم لیبل کے ہر نئے جوڑے کو کوما سے الگ کریں:
=QUERY(Papers!A1:G11,"select A,B,C label A 'Name', B 'Date'")
فارمیٹ
The format شق کالم میں تمام اقدار کے فارمیٹ کو تبدیل کرنا ممکن بناتی ہے۔ اس کے لیے، آپ کو مطلوبہ فارمیٹ کے پیچھے کھڑے پیٹرن کی ضرورت ہوگی۔
ٹپ۔ فارمیٹ کی شق Google Sheets QUERY میں سولو بھی چل سکتی ہے۔
=QUERY(Papers!A1:G11,"select A,B,C limit 3 format B 'mm-dd, yyyy, ddd'")
ٹپ۔ میں نے اس بلاگ پوسٹ میں Google Sheets QUERY کے لیے تاریخ کے کچھ فارمیٹس کا ذکر کیا ہے۔ دیگر فارمیٹس براہ راست اسپریڈ شیٹس سے لیے جا سکتے ہیں: فارمیٹ > نمبر > مزید فارمیٹس > حسب ضرورت نمبر فارمیٹ ۔
اختیارات
اس کا استعمال نتائج کے ڈیٹا کے لیے کچھ اضافی سیٹنگز سیٹ کرنے کے لیے کیا جاتا ہے۔
مثال کے طور پر، no_values جیسی کمانڈ صرف فارمیٹ شدہ سیلز کو لوٹائے گی۔
QUERY فارمولے بنانے کا تیز ترین طریقہ – ایک سے زیادہ Vlookup میچز
گوگل شیٹس میں QUERY فنکشن کتنا ہی طاقتور ہے،اسے پکڑنے کے لیے سیکھنے کے منحنی خطوط کی ضرورت پڑ سکتی ہے۔ ایک چھوٹی سی میز پر ہر ایک شق کو الگ الگ بیان کرنا ایک چیز ہے، اور کچھ شقوں اور ایک بہت بڑی میز کے ساتھ ہر چیز کو صحیح طریقے سے بنانے کی کوشش کرنا اور بالکل دوسری چیز ہے۔ یوزر فرینڈلی انٹرفیس اور اسے ایڈ آن بنائیں۔
ایک سے زیادہ VLOOKUP میچز فارمولوں سے بہتر کیوں ہیں؟
ٹھیک ہے، ایڈ آن کے ساتھ کی ضرورت نہیں ہے :
- ان شقوں کے بارے میں کچھ بھی معلوم کریں۔ ایڈ آن میں بہت سارے پیچیدہ حالات پیدا کرنا واقعی آسان ہے: جتنے آپ کی ضرورت ہے ان کے آرڈر کے باوجود آپ کو جتنے بھی میچز حاصل کرنے کی ضرورت ہے۔
نوٹ۔ اس وقت، مندرجہ ذیل شقوں کو ٹول میں شامل کیا گیا تھا: منتخب کریں، کہاں، حد، اور آفسیٹ ۔ اگر آپ کے کام کو دیگر شقوں کی بھی ضرورت ہے، تو براہ کرم ذیل میں تبصرہ کریں - شاید، آپ ہمیں بہتر بنانے میں مدد کریں گے؛)
- جانیں کہ کس طرح آپریٹرز کو داخل کریں : بس ایک سے ایک کو چنیں۔ ڈراپ ڈاؤن فہرست۔
- پزل اوور درست تاریخ اور وقت درج کرنے کا طریقہ ۔ ایڈ آن آپ کو ان میں داخل کرنے دیتا ہے جیسا کہ آپ اپنی اسپریڈشیٹ لوکیل کی بنیاد پر کرتے تھے۔
ٹپ۔ مختلف ڈیٹا کی اقسام کی مثالوں کے ساتھ ٹول میں ہمیشہ ایک اشارہ دستیاب ہوتا ہے۔
ایک بونس کے طور پر، آپ اس قابل ہو جائیں گے:
- پیش نظارہ دونوں نتیجہ اور فارمولہ
- اپنی فوری ایڈجسٹمنٹ کریں