PDA

View Full Version : مشکل با پایگاه داداه



amin_a_y
شنبه 22 شهریور 1393, 00:38 صبح
سلام دوستان خسته نباشد
من تو دیتابیس ام چنتا جدول دارم حالا چطوری می تونم یک کلمه رو تو همشون جستجو کنم
ممنون

majnoon110
شنبه 22 شهریور 1393, 09:57 صبح
شرط خاصی داری برای جستجو؟
یعنی اون فیلدی که میخوای در اون جستجو کنی در همه ی جدول ها هست؟ یکیه اسمش؟

amin_a_y
شنبه 22 شهریور 1393, 15:04 عصر
ممنون از جوابتون راستش من دو تا مشکل دارم یکی همین جستجو هستش و یکی هم علاقه مندی
من با یک جدول مشکلی ندارم ولی وقتی جدول بیشتر از یکی میشه دیگه نمی دونم چطوری علاقه مندی همه جدول ها رو نمایش بدم و یا تو همشون جستجو کنم

omid.n1990
شنبه 22 شهریور 1393, 15:10 عصر
روشهایی وجود داره مثلا union دوتا جدول و ... که ارتباط بین جدولها برقرار بشه. یک جستجو روابط جبری پایگاه یا عملگرهای پایگاه بزنید تعدادشون زیاد هست بسته به نیازتون از هرکدوم که شد استفاده کنید.
مثلا دوتا جدول دارید که فیلدهایی متفاوتی دارند ولی شما مثلا یک فیلد به اسم نام دارند که تو جفتشون مشترک هست و اونها رو میخواهید جستجو کنید و خروجی رو به کاربر بدید. در این صورت دوتا کوئری جداگانه میتونید بنویسید و حاصل رو از طریق union یا سایر عملگرهای دیگه به هم اجتماع، پیوند و یا... بزنید تا خروجی نهایی رو داشته باشید.

amin_a_y
شنبه 22 شهریور 1393, 15:23 عصر
میشه با یک مثال توضیح بدید
مثلا من دو تا جدول دارم به نام های یک و دو و تو هرکدوم سه تا ستون دارم به نام های id , name , like چجوری تو این دوتا اونایی که like برای yes است رو جدا کنم

amin_a_y
شنبه 22 شهریور 1393, 15:32 عصر
ممنون مشکلم حل شده میشه در مورد نحوه کارش یگم توضیح بدید؟

majnoon110
شنبه 22 شهریور 1393, 15:32 عصر
برای علاقه مندی میتونی یک جدول به اسم علاقه مندی ایجاد کنی. این جدول یک آی دی برای خودش داره و یک آی دی مطلب و نام جدول مطلبی که به علاقه مندی ها اضافه شده و بعد با استفاده از اون میتونی در یک لیست علاقه مندی ها رو اضافه کنی
راه حل ساده تر اینه که یک جدول درست کنی هر مطلبی که به علاقه مندی اضافه شد، یک نسخه از اون در جدول علاقه مندی ها کپی بشه! که البته در این کار با مشکل افزونگی رو به رو میشی که اگه تعداد جداولت زیاد باشه حجم دیتابیس بالا میره

و راه حل عقلانی تر و بهتر اینکه برای هر جدولت یک فیلد به نام علاقه مندی هم ایجاد کنی که در صورتی که با مقدار دلخواه (مثلا 1) برابر بود به عنوان علاقه مندی در نظر گرفته بشه. بعد در صفحه ی نمایش علاقه مندی ها جستجو کنی و کل این نتایج رو با هم ادغام کنی!


برای جستجو هم همین روشی که دوستمون گفتند باید نتایج چند جستجو با هم ادغام بشه
برای آشنایی با دستور union این رو نگاه کن:
http://www.developer1.ir/SQL/Union.aspx

البته اگر حجم دیتابیست خیلی زیاده از این استفاده نکنی بهتره
بلکه از دستورات پیوندی استفاده کن و نتایج رو محدود کن

amin_a_y
شنبه 22 شهریور 1393, 16:21 عصر
چجوری میتونم نتایج چند جدول رو با هم ادغام کنم؟