آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

اتصال چند جدول بانک اطلاعاتی به یکدیگر

underomeda  12 سال پیش  11 سال پیش
+3 0

سلام،استاد من یه دیتا بانک دارم که شامل چندین جدوله و یه اکتیویتی دارم  که چندین دکمه دارد مشخص کننده مطالب برنامه اس میخوام وقتی روی یکی ا این دکمه ها تاچ شد لیست من فقط موضوعات همون رو نشون بده و در ضمن با یه جدول درست کار میکنه چند جدول میشه جواب نمیده .

0 0
حامد جان تیتر سئوالت خوب نبود «بانک اطلاعاتی» نوشته بودی. سعی کن در سئوال واضح بنویسی که هم کوتاه باشه و هم مطلب رو برسونه. «راهنما» رو مطالعه کن. (12 سال پیش)
 برای این سوال 3 پاسخ وجود دارد.
پاسخ به سوال 
Alireza.b  12 سال پیش
0 0

سلام

طبق توضیحی که دادید باید چند جدول داشته باشید.

مشکلی هم در استفاده از چند جدول وجود نداره فقط کافی توی query هاتون اسم جدول رو عوض کنید.

پاسخ به سوال 
na3er-faraji  12 سال پیش
0 0

با سلام

راه دوم هم اینه :

اگر جداول شما در تمامی موضوعات به جز گروه مشترکه میتونید یک جدول ساخته و برای هر  گروه یک id اختصاص بدید . بعد هنگام جستجو کافیه یک where در عبارت sql خودتون اضافه کرده و جستجوتون رو انجام بدید.

مثال :

 Select * from YourTable Where GroupId=1
0 0
متوجه منظورتون نشدم (12 سال پیش)
پاسخ به سوال 
uncocoder  12 سال پیش
+4 0

بذارید من جواب دوستان رو شفاف تر کنم.

ببین شما در بانک های اطلاعات می تونید Query بگیرید که میشه هم باهاش داده درج کرد، هم داده حذف کرد، هم گزارش گرفت و فیلتر کرد، هم جدول ها رو به هم چسبوند و ... که هر کدام Syntax خاص خودشون رو دارن. برای خوندن اطلاعات از SELECT استفاده میشه که می تونه یک یا چند جدول رو بگیره اما در حالت چند جدوله بهتر هست که از JOIN استفاده بشه.

فرض کن یک بانکی داری به اسم «افراد» که شامل یک کد انحصاری برای هر فرد و نام و نام خانوادگیش هست.

حالا همین افراد ( هر فرد خاص ) می تونه ده ها تلفن و آدرس داشته باشد پس منطقی نیست که به ازای هر فرد در این جدول یک بار دیگه نام و نام خانوادگیش تکرار بشه. بلکه بهتر هست یک جدول دیگه به اسم «تلفن ها» داشته باشیم که به ازار هر کد مشخص از هر فرد مشخص، اطلاعات تلفن و آدرس در اون ذخیره شده. به این ترتیب داریم:

Table Name: person

another fields family name pid
another fields 1 some family 1 some name 1 1
another fields 2 some family 2 some name 2 2

Table Name: contact

location address tel person_pid pid
home address 1 for person 1 tel 1 for person 1 1 1
office address 2 for person 1 tel 2 for person 1 1 2

 

حالا یک QUERY می نویسیم به این شکل

SELECT 
person.*,
contact.tel,
contact,location
FROM person
LEFT OUTER JOIN contact ON person.pid=contact.person_pid
WHERE person.pid=1

به این ترتیب می دو سطر برات لیست میشه که داخلش این فیلدها وجود داره:

همه فیلدهای person + فیلد tel, location از Contact ( که می تونه این هم * باشه ). حالا دو تا جدول به هم چسبیده و اطلاعات فرد با کد 1 رو از هر دو جدول ادغام کرده.

می تونی بجای LEFT OUTER JOIN از خیلی چیزها مثل JOIN, INNER JOIN و ... استفاده کنی که بسته به خواستت داره. برای دیدن تفاوت JOIN ها از لینک زیر استفاده کن:

http://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins

0 0
ممنون استاد (12 سال پیش)
0 0
استاد آیا همین جوین کردن رو هم میشه واسه rows ها در یک تیبل انجام داد؟ (11 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .