ورود

View Full Version : چطوری کوئری بنویسم که براش شرطی تعیین نشده



MahmoodM30
جمعه 29 فروردین 1393, 14:20 عصر
سلام میخواستم بدونم چطور میتونم برای "شماره تولید کنندگانی که شهر یکسانی دارند" بر اساس جدول زیر کوئری بنویسم؟

نام جدول S
http://img.majidonline.com/pic/305761/1.jpg

MahmoodM30
جمعه 29 فروردین 1393, 14:39 عصر
یادم رفت این جدول هم هست

جدول P
http://img.majidonline.com/pic/305763/3.jpg

جدول SP ادغام دو جدول بالا
http://img.majidonline.com/pic/305762/2.jpg

r4hgozar
شنبه 30 فروردین 1393, 07:28 صبح
اگه ادغام نمی کردی هم میشد.
اما وقتی ادغام کردی با به قولی join کردی که خیلی راحت. باید شهر ها رو با هم مقایسه کنی.



select s# from tbl_sp where s.city=p.city


و اگه ادغام نشه هم اینجوری



select s# from tbl_s where tbl_s.city=tbl_p.city

MahmoodM30
یک شنبه 31 فروردین 1393, 19:04 عصر
ممنون دوست عزی من میخوام فقط با استفاده از جئول S این کار رو بکنم

http://img.majidonline.com/pic/305761/1.jpg
و کوئری که شما نوشتین هر سه شماره S1,S2,S3 رو توی خروجی نشون میده
بنظرتون مشکل از کجا میتونه باشه؟
نمیشه از Group By و Having استفاده کرد؟

nedata
سه شنبه 02 اردیبهشت 1393, 21:16 عصر
Select S#,Count(*) From S group By S# having COunt(*)>1

MahmoodM30
شنبه 06 اردیبهشت 1393, 14:03 عصر
مرسی دوست عزیز ولی کوئری که نوشتین کار نمیکنه

من خودم وقتی از کوئری زیر استفاده میکنم

SELECT S# From S GROUP BY City HAVING Count(City)>1

نتیجه ای رو که بهم نشون میده فقط S3 هست یعنی تا حدودی درست کار میکنه ولی هرچی میکنم نمیتونه S1‌رو هم برگردونه

چون S1وS3 شهرشون یکی هست و باید در خروجی نشون داده بشن

ممنون میشم دوستان راهنمایی کنن

با تشکر