مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

yk2797

عضویت از 1396/04/23

مقایسه دو فیلد رشته ای با دستور select

  • جمعه 23 تیر 1396
  • 15:28
تشکر میکنم
با سلام. من برنامه دارم که با یک دستور می خواهم مقدار دو فیلد از نوع متنی را با هم مقایسه کند و در صورتی که با هم برابر بودند نتیجه رو نشون بده مشکل من اینه دو جدول دارم که هرکدام دارای فیلدی هستند که شماره موبایل در آن ذخیره شده در یکی از این دو جدول چون قبلا نوع آن را number تعیین کردند صفر اول شماره وجود نداره اما چون اون یکی جدول دارای صفر است در مقایسه جواب نمیده مثلا ۰۹۱۵۷۷ با ۹۱۵۷۷ رو چون یکی از انها فاقد صفر است نتیجه لازم رو نمیده. البته نحوه مقایسه در برنامه من کل جدول اول با کل جدول دوم با یک دکمه مقایسه میشه یعنی یک فیلد تنها مقایسه نمیشه بهمین خاطر دستور like در مقایسه کلی جواب نمیده. اگر راهی هست که من به ابتدای شماره های فاقد صفر صفر اضافه کنم یا دستوری هست که دو شماره فوق را که در مثال آوردم با هم مقایسه بکنه و تشخیص بده که آنها با هم مساویند یعنی اون صفر اول رو در نظر نگیره. لطفا راهنمایی فرمایید.

پاسخ های این پرسش

تعداد پاسخ ها : 4 پاسخ
کاربر سایت

سهیل علیزاده

عضویت از 1396/04/09

  • جمعه 23 تیر 1396
  • 19:09
کاربر سایت

yk2797

عضویت از 1396/04/23

  • جمعه 23 تیر 1396
  • 19:35
با تشکر اما جداول من هیچ کدام فیلد کلید ندارند و صرفا دو فیلد متنی با هم تطبیق داده می شوند اگر برابر هم بودن یا نبودند نتیجه نمایش داده میشه. نکته ای که هست اینکه کل جدول اول با کل جدول دوم فیلد شماره تلفنشون باید باهم در شرط where تطبیق داده بشن و دومین نکته اینکه علت این مشکل من فقط بخاطر اینه که در یکی از جدوال شماره تلفن فاقد صفر ماقبل شماره است اما جدول دوم صفر ماقبل رو دارد اگه اینطوری نبود مشکل حل بود چون دو تا شماره مثل هم رو که فقط یکیش صفر ماقبل رو نداره با شرط = تشخیص نمیده آیا دستوری دیگه بغیراز = هست که تشخیص بده مثلا دو شماره ۰۹۱۵۶۷ و ۹۱۵۶۷ با هم برابرند؟ لطفا راهنمایی کنید.
کاربر سایت

سهیل علیزاده

عضویت از 1396/04/09

  • جمعه 23 تیر 1396
  • 20:27

بااستفاده از Wildcard ها شاید بشه این مشکل رو حل کرد لینک زیر را مشاهده کنید :

SQL Wildcard Characters

کاربر سایت

yk2797

عضویت از 1396/04/23

  • جمعه 23 تیر 1396
  • 23:12
باتشکر. اما از این روش فقط زمانی میشه استفاده کرد که فقط یک عبارت را مثلا در داخل تکس باکس بنویسی بعد عملیات انجام شرط مساوی یا شبیه بودن را انجام داد اما زمانی که میخواهیم کل جدول ۱ را با کل جدول۲ تطبیق بده یعنی فیلد شماره را که مثلا در ۱۰۰ رکورد متفاوت در دو جدول ذخیره شده را یکجا همه را با هم تطبیق بده اگه هر سطر دارای فیلد شماره برابر بود نتیجه رو اعلام کنه
کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)