PDA

View Full Version : سوال: استخراج ردیفهای دو تیبل که دارای فیلدهای برابر هستن!



s.mohammad
یک شنبه 11 فروردین 1392, 13:22 عصر
سلام دوستان, سال نو همه تون مبارک امیدوارم سال خیلی خوبی پیش رو داشته باشید.

من توی mysql خیلی مبتدی هستم و سوالم هم مبتدیانه است. من دو تا تیبل دارم با داده های متفاوت اما هر دو مثلا یک فیلد مشترک به نام ایمیل دارن. حالا می خوام در این دو تیبل ردیفهایی که مقدار ایمیلشون برابر هست رو سلکت کنم. یک راه مبتدیانه اش که به ذهن خودم رسید اینه که از یک تیبل شروع کنم و یکی یکی مقدار ایمیل ها رو در تیبل دوم سرچ کنم که فکر نمی کنم این راهش باش چون با توجه که ردیفهای تیبلها بالای 100 هزار هست بسیار زمان بر خواهد بود.

لطفا دوستان راه حل بهتری و سریعتری رو بیان کنند.

متشکرم

سعید صابری
یک شنبه 11 فروردین 1392, 15:21 عصر
می تونی از join استفاده کنی و یا روش ساده معمولی.
البته بحث Join من یک مثال ساده زدم اطلاعات بیشتر می خوای یکی از دوستان زحمت کشیده در یک ایبوک Join و انواعش توضیح داده
http://barnamenevis.org/showthread.php?351147-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-MySQL-JOIN&highlight=join

SELECT table1.field1,table2.field1,... FROM table1 JOIN table2 ON (table1.email =table2.email)

روش معمولی

SELECT table1.field1,table2.field1,... FROM table1,table2
WHERE table1.email = table2.email

s.mohammad
یک شنبه 11 فروردین 1392, 21:12 عصر
آقا سعید خیلی ممنون. فقط یه سوال اگر دوتا تیبل تو دوتا دیتابیس متفاوت باشند باز هم میشه از یه همچین دستوری استفاده کرد؟

سعید صابری
یک شنبه 11 فروردین 1392, 23:02 عصر
بله.فقط با این تفاوت که باید اول نام دیتابیس بنویسی

DBname.TableName.FieldName