PDA

View Full Version : بدست آوردن مقدار مساوی دو فیلد از یک تیبل



Ali_Fallah
چهارشنبه 17 اسفند 1384, 09:32 صبح
آیا میشود در یک کوئری یا هر طریق دیگر در صورتیکه مقدار دو فیلد A , B با هم مساوی باشند را بدست آورد؟

moustafa
چهارشنبه 17 اسفند 1384, 09:45 صبح
اگر هر دو در یک جدول هست :
c=a-b
در ناحیه کریتیا زیر ستونc مساوی صفر
اگر هر دو در یک جدول نیست
a,b را به راتباط بده وبقیه همان

reza_rad
چهارشنبه 17 اسفند 1384, 10:06 صبح
مشکل کجاست؟


select * from tbl_test where a=b


اگه توی یه جدول باشند که مشکلی نیست. برای دوتا جدول هم میشه با join ها.

Ali_Fallah
چهارشنبه 17 اسفند 1384, 15:29 عصر
اگر ممکنه فایل ضمیمه را اصلاح نمائید. متشکرم
توضیحات نیز در فایل موجود می باشد.

reza_rad
چهارشنبه 17 اسفند 1384, 15:49 عصر
اگر ممکنه فایل ضمیمه را اصلاح نمائید. متشکرم
توضیحات نیز در فایل موجود می باشد.
جدول اول شما مشکل کلید اصلی داره باید فیلد id رو کلید اصلی کنید.
واسه ی جدول دوم هم یه کوئری نوشتم براتون.

Ali_Fallah
شنبه 20 اسفند 1384, 14:10 عصر
دوست عزیر reza_rad با تشکر از شما لطفاً این فایل را که اصلاح نموده اید دوباره نگاهی بیندازید فکر کنم اشتباه شده است چون مقدار دو فیلد با هم مساوی نیست.
در مورد کلید اصلی هم عرض کنم که ممکن است از ابتدا تیبل ما دارای مقادیر بوده والبته تکراری لذا ایجاد کلید پعد از ورود اطلاعات کاری بیهوده است چون همانطوریکه میدایند اکسس خطا میگیرد.

reza_rad
شنبه 20 اسفند 1384, 14:25 عصر
من نگاه کردم فقط توی نشون دادن مشکل داست. کد درسته:


SELECT one.*, two.*
FROM test1 AS one, test1 AS two
WHERE one.id=two.code;



این توی جدول test1 رکوردهایی رو که فیلد id شون با فیلد code مقدار مساوی دارند رو پیدا می کنه(مگه همین رو نمی خواستید؟)

در باره ی جدول test هم اینطوری می تونید id تکراری رو پیدا کنید:


SELECT id
FROM test
GROUP BY id
HAVING count(*)>1;


البته پیشنهاد می کنم یه فکری به حال کلید اصلی این جدول بکنید چون بعدا براتون دردسر میشه.

Ali_Fallah
یک شنبه 21 اسفند 1384, 14:33 عصر
آقا عالی بود متشکرم ...

reza_rad
یک شنبه 21 اسفند 1384, 14:38 عصر
خواهش می کنم.
موفق باشی.