PDA

View Full Version : اعمال دستور DISTINCT برای جداول مرتبط به هم



viper2009
دوشنبه 13 دی 1389, 12:47 عصر
با سلام

من چند تا جدول دارم که به به یک جدول متصل است در چدول خارجی چند تا رکورد تکراری دارم که دستور DISTINCT را به کد اضافه کردم نمی دونم چرا موارد تکراری را حذف نمی کنه؟
در ضمن در این دستور از WHERE نیز استفاده شده است



SELECT DISTINCT tblScan.namGar, tblScan.lastGar, tblScan.namGozar, tblScan.lastGozar, tblScan.mobile, tblScan.idCoGroup, tblScan.idCompany, tblScan.idAgent,
tblScan.idMarketer, tblScan.idSubMarket, tblExtend.numBimeh, tblExtend.year, tblExtend.month, tblExtend.day, tblExtend.firstPrice,
tblExtend.totalPrice, tblExtend.describ, tblCoGroup.namCoGroup, tblCompany.namCompany, tblMarketer.namMarketer,
tblSubMarket.namSubMarket
FROM tblCoGroup INNER JOIN
tblCompany ON tblCoGroup.IdCoGroup = tblCompany.idCoGroup INNER JOIN
tblScan ON tblCoGroup.IdCoGroup = tblScan.idCoGroup AND tblCompany.IdCompany = tblScan.idCompany INNER JOIN
tblExtend ON tblScan.IdScan = tblExtend.idScan INNER JOIN
tblMarketer ON tblScan.idMarketer = tblMarketer.IdMarketer INNER JOIN
tblSubMarket ON tblScan.idSubMarket = tblSubMarket.IdSubMarket
WHERE (tblExtend.month = 7)

Elham_gh
دوشنبه 13 دی 1389, 13:20 عصر
فیدهای متنی رو trim کنید . اگر باز نشد دستئری بنویسید که رکوردهای تکراری رو بده اینطوری متوجه می شید اشکال از کجاست

iman_Delphi
چهارشنبه 15 دی 1389, 20:29 عصر
دوست من اگر از ISNull استفاده كني هم بد نيست چون ممكن در بعضي جاها واستون تناقض ايجاد كنه

masoudcg1
جمعه 17 دی 1389, 21:40 عصر
سلام علیکم
به نوع داده فیلد هاتون دقت داشته باشید
اگر فیلدی متنی دارید بهتر است که از نوع nvarchar استفاده کنید
زیرا اگر از char یا nchar استفاده کرده باشید ما بقی طول فیلد که داده ای را برایش وارد نکرده اید فضای خالی میگذارد
یا حق