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

نام تاپیک: تکرار در Mysql

  1. #1
    کاربر دائمی آواتار binyaft
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    سیم مسی
    پست
    1,761

    Red face تکرار در Mysql

    سلام دوستان

    من با یه Query تعدادی پست رو برای کاربر لاگین کرده + اینکه اون کاربر پست رو لایک زده یا نه میکشم بیرون!

    Query به صورت زیر هست


    select * from `user_posts`,`user_likes` WHERE `user_posts`.`user-id`='$user_id' and `user_likes`.`post-id`=`user_posts`.`post-id`


    پست ها رو درست میکشه بیرون اما اگر یه پستی مثلا سه بار لایک خورده باشه ، همون پست سه بار نمایش داده میشه

    کسی میدونه چطور باید حلش کرد!؟

    ممنون

  2. #2
    کاربر دائمی آواتار king-net
    تاریخ عضویت
    اسفند 1389
    محل زندگی
    خونمون
    پست
    153

    نقل قول: تکرار در Mysql

    به نظر من لایک ها تو رو تو یه متغیر جداگونه بریز بعد یه count ازش بگیر یا میتونی تو همون دستور sql ازش count بگیری

  3. #3
    کاربر دائمی آواتار shahriyar3
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    تهران
    سن
    39
    پست
    720

    نقل قول: تکرار در Mysql

    يه فيلد بزار كه مشخص كنه لايك خورده يا نه از نوع بولين يعني اگر لايك خورده پست True اگه نه false .ميتوني هر باز بعد از لايك خوردن چك كني اگر مقدارش True بود ديگه مقداري نفرسته.
    اون يكي رو هم استفاده كن براي كساني كه لايك زدن روش و آيدي هاشونو جمع كن

  4. #4
    کاربر دائمی آواتار xoogle.ir
    تاریخ عضویت
    اسفند 1387
    محل زندگی
    <?مشهد=?>
    پست
    503

    نقل قول: تکرار در Mysql

    از group by استفاده کن مشکلت حل میشه مثلا آخر کوئری این رو اضافه کن :

    GROUP BY `user_likes`.`post-id`

    اگه این نشد یه فیلد دیگه رو امتحان کن ولی مطمئنم با group by مشکلت حل میشه.

  5. #5

    نقل قول: تکرار در Mysql

    از SELECT DISTINCT استفاده کن
    select distinct from `user_posts`,`user_likes` WHERE `user_posts`.`user-id`='$user_id' and `user_likes`.`post-id`=`user_posts`.`post-id`

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

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