نمایش نتایج 1 تا 7 از 7

نام تاپیک: جوین در اس کیو ال (کمک

  1. #1

    Question جوین در اس کیو ال (کمک

    سلام من دو تا جدول دارم که فیلد مشترکشون catID می باشد من می خام روی این فیلد بین دو جدول جوین بزنم فقط نکنه ای که داره
    در جدول f فیلد catID از نوع int و جدول a از نوع nvarchar می باشد.
    جدول f
    1
    2
    4

    جدول a
    1,2
    1
    4

    جدول خروجی بر اساس جوین این باید بشه
    f a
    1 1
    4 4
    1 1,2
    2 1,2

    دوستان کمک کنید .

    اینم کدی که خود من نوشتم ولی درست کار نمی کنه
    SELECT a.catID,f.catID FROM a
    (join f on f.catID in (a.catID

  2. #2
    کاربر دائمی آواتار golbafan
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    در قلب دوستان
    پست
    2,018

    نقل قول: جوین در اس کیو ال (کمک

    نمیشه دو نوع مختلف رو بطور مستقیم جوین کنی

    باید اول اونی که int هست به nvarchar تبدیل کنی


    SELECT a.catID,f.catID FROM
    a join f
    on
    CONVERT(nvarchar, f.catID) = a.catID

  3. #3

    نقل قول: جوین در اس کیو ال (کمک

    نقل قول نوشته شده توسط golbafan مشاهده تاپیک
    نمیشه دو نوع مختلف رو بطور مستقیم جوین کنی

    باید اول اونی که int هست به nvarchar تبدیل کنی


    SELECT a.catID,f.catID FROM
    a join f
    on
    CONVERT(nvarchar, f.catID) = a.catID

    خطایی در مورد نوع(تایپ های مختلف) ندارم فقط کدی که بالا خودم نوشتم کار می کنه ولی مقدار درستی بر نمی گردونه(خروجیش درست نیست)
    می خام هرچیزی که توی a.catID بود با f.catID بررسی کنه ینی فیلد a چند مقداریه که با کاما جدا میشن.

  4. #4
    کاربر دائمی آواتار mmbguide
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    منظومه شمسی
    پست
    1,146

    نقل قول: جوین در اس کیو ال (کمک

    سلام

    شما چرا در دستور Join از in استفاده کردید؟ برای محدود کردن ردیف های جدول دوم می تونید از Apply جهت Join کردن استفاده کنید. سرچ کنید تا روش استفاده از Apply رو متوجه بشید

  5. #5

    نقل قول: جوین در اس کیو ال (کمک

    مقدار ذخیره شده داخل جدول a بصورت 1,2 هست؟
    اگر اسکریپت جداول به همراه داده تستی بزارید دوستان بهتر میتونن کمک کنن

  6. #6

    نقل قول: جوین در اس کیو ال (کمک

    نقل قول نوشته شده توسط hamid_hr مشاهده تاپیک
    مقدار ذخیره شده داخل جدول a بصورت 1,2 هست؟
    اگر اسکریپت جداول به همراه داده تستی بزارید دوستان بهتر میتونن کمک کنن


    CREATE TABLE `a` (
    `ID` int(10) NOT NULL AUTO_INCREMENT,
    `catID` varchar(450) NOT NULL,
    PRIMARY KEY (`ID`)
    )

    catID ID
    1,2 10
    1 11
    1,2,3 12


    CREATE TABLE `f` (
    `ID` int(10) NOT NULL AUTO_INCREMENT,
    `catID` int(10) NOT NULL,
    PRIMARY KEY (`ID`)
    )

    catID ID
    1 50
    1 51
    2 52



    جدول خروجی :
    a.catID a.ID f.catID f.ID
    1 11 1 50
    1,2 10 1 50
    1,2,3 12 1 50
    1 11 1 51
    1,2 10 1 51
    1,2,3 12 1 51
    1,2 10 2 52
    1,2,3 12 2 52

    یکم عدد تو عدده
    خیلی گیرم ممنون میشم کمک منید.
    اسکریپت ها هم درسته توی مای اس کیو ال.

  7. #7

    نقل قول: جوین در اس کیو ال (کمک

    بایست در بخش mysql بپرسید.


    جدول a نرمال نیست. بهتره قبل از هر کاری جدولتون رو نرمال کنید.

تاپیک های مشابه

  1. پاسخ: 0
    آخرین پست: چهارشنبه 22 اردیبهشت 1395, 00:26 صبح
  2. سوال: تفاوت ساخت دیتا بیس با ویژوال استدیو و اس کیو ال منجمتن استدیو
    نوشته شده توسط hadiyoodream در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 2
    آخرین پست: یک شنبه 25 مرداد 1394, 14:27 عصر
  3. پاسخ: 0
    آخرین پست: سه شنبه 02 اردیبهشت 1393, 17:05 عصر
  4. سوال: مشکل در اتصال ویژوال استادیو 2010 به اس کیو ال سرور 2000
    نوشته شده توسط mashhadpix در بخش ASP.NET Web Forms
    پاسخ: 2
    آخرین پست: سه شنبه 11 تیر 1392, 10:58 صبح

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •