تور لحظه آخری
امروز : پنجشنبه ، 8 آذر 1403    احادیث و روایات:  امام علی (ع):خداى تعالى كتابى راهنما فرستاد و در آن خوب و بد را روشن ساخت. پس راه خوبى را پيش گ...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

صرافی ارکی چنج

صرافی rkchange

سایبان ماشین

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

Future Innovate Tech

پی جو مشاغل برتر شیراز

لوله بازکنی تهران

آراد برندینگ

خرید یخچال خارجی

موسسه خیریه

واردات از چین

حمية السكري النوع الثاني

ناب مووی

دانلود فیلم

بانک کتاب

دریافت دیه موتورسیکلت از بیمه

طراحی سایت تهران سایت

irspeedy

درج اگهی ویژه

تعمیرات مک بوک

دانلود فیلم هندی

قیمت فرش

درب فریم لس

زانوبند زاپیامکس

روغن بهران بردبار ۳۲۰

قیمت سرور اچ پی

خرید بلیط هواپیما

بلیط اتوبوس پایانه

قیمت سرور dl380 g10

تعمیرات پکیج کرج

لیست قیمت گوشی شیائومی

خرید فالوور

بهترین وکیل کرج

بهترین وکیل تهران

خرید اکانت تریدینگ ویو

خرید از چین

خرید از چین

تجهیزات کافی شاپ

محصولات فوراور

خرید سرور اچ پی ماهان شبکه

دوربین سیمکارتی چرخشی

همکاری آی نو و گزینه دو

کاشت ابرو طبیعی و‌ سریع

الک آزمایشگاهی

الک آزمایشگاهی

خرید سرور مجازی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

قیمت بالابر هیدرولیکی

لوله و اتصالات آذین

قرص گلوریا

نمایندگی دوو در کرج

خرید نهال سیب

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

وکیل ایرانی در استانبول

رفع تاری و تشخیص پلاک

پرگابالین

 






آمار وبسایت

 تعداد کل بازدیدها : 1834890867




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

مشکل در ایجاد یک Query -


واضح آرشیو وب فارسی:سایت ریسک: مشکل در ایجاد یک Query amir_s 08 ارديبهشت 1385, 18:29سلام در ساخت یک query مشکل داشتم که براتون میگم ... من تو MySQL دو تا Table دارم ... با نام های Users و Config من می خوام با استفاده از SELECT بیام و یه سری از کاربر ها رو از users انتخاب کنم ... ولی باید مقدار فیلد credit اون ها کمتر از یه مقدار خاص باشه ... حالا این مقدار خاص : این مقدار از ضرب "یه عدد که از فیلد num_of_need در همون رکورد بدست میاد" ، در یه مقدار از جدول config بدست میاد . در جدول config من سه مقدار دارم ... p1_price و p2_price و p3_price ... این ها با توجه به عددی که داخل فایل position در جدول users هست انتخاب میشن ... حالا میخوام اگر مثلا position طرف 2 بود ، بیاد و حساب کنه که اگر num_of_need اون ضرب در p2_price در جدول config بیشتر از credit اون بود ، اون رو select کنم ... می خواستم اگر بشه حد اکثر در 2 query این کار انجام بشه . یک مقدار تا مفهموم توضیح دادم ... ببخشید اگر زیاد نوشتم ... اگر جاییش مبهمه بگید بیشتر توضیح بدم .... ممنون از شماییه که می خونید و جواب میدید . amir_s 09 ارديبهشت 1385, 16:42دوستان اگر زودتر جواب بدن ممنون میشم . اگر نامفهومه بگید تا واضح تر بگم . Salman_MP 09 ارديبهشت 1385, 18:36نا مفهومه بیشتر توضیح بده ! amir_s 09 ارديبهشت 1385, 21:00در جدول users یک فیلد هست به اسم position که میشه 4 تا مقدار در اون قرار داد ... از عدد 1 تا 4 در جدول config هم 4 فیلد هست به اسم های p1_price و p2_price و p3_price و p4_price که هر کدوم دارای یک عدد هستن .. این عدد ها قیمت یک کالا برای افراد با position های مختلفه . همچنین در جدول users ، دو فیلد دیگه هست . credit که اعتبار کاربره و num_of_need که تعداد درخواستی کالا برای اون کاربره . من می خوام توسط یک query ، کاربرایی رو select کنم که اعتبار برای خرید کالاشون تموم شده باشه ( یا بر عکس ) یعنی اعتبارشون کمتر از مقداری باشه که از ضرب " num_of_need " در قیمت کالا ( که توسط position مشخص میشه ) باشه ... یه چیز دیگه ... من مقادیر فیلد های p1_praice تا p2_price رو قبلا در متغیر هایی با همین نام در اسکریپت Php ذخیره کردم ، منظورم اینه که دیگه برای این مقادیر احتیاجی به query دوباره نیست . امیدوارم دیگه نا مفهوم نباشه ! spsgorgan 09 ارديبهشت 1385, 22:11از جوين استفاده كردي يا نه ؟ Salman_MP 10 ارديبهشت 1385, 02:44اگه درست فهمیده باشم: جدول config فقط یک ردیف داره که 4 تا مقدار مختلف توشه ! اگه غلط فهمیدم معذرت! اگر هم درسته پیشنهاد می کنم اگه می تونی طراحی دیتابیست رو عوض کنی .... (کدم هیچ اعتباری نداره چون توی notepad تایپش کردم.) این کار رو می کنیم: $sql = "SELECT * FROM users as U, config as C WHERE (U.position=1 AND U.credit<U.num_of_need*C.p1_price) OR (U.position=2 AND U.credit<U.num_of_need*C.p2_price) OR (U.position=3 AND U.credit<U.num_of_need*C.p3_price) OR (U.position=4 AND U.credit<U.num_of_need*C.p4_price)"; یا این یکی که خیلی هم خوشگل تره ! به خوندنش می ارزه. یه نگاهی بکن. // $cnn = connection to database ; $sql = "SELECT * FROM users"; $res = mysql_query($sql , $cnn); while ($row = mysql_fetch_array($res)) { $num = $row["position"]; $str_price = ""; eval("$str_price = "p$num_price";"); $price = $$str_price; $sql = "SELECT * FROM users as U, config as C WHERE U.UID=".$row["UID"]." AND U.credit<$price*U.num_of_need" ; $result = mysql_query($sql, $cnn); //if $result not empty //DO SOMTHING HERE } amir_s 10 ارديبهشت 1385, 16:00بله ممنونم . درسته ... جدول config فقط یک record داره . می گید به چه صورتی تغییرش بدم !؟ از کدی که دادید ممنونم . کار کرد ... عالی ... فقط من موندم ! من قبلا از or که استفاده میکردم MySQL خطا می گرفت .... در رابطه با کد دوم : من هم قبلا از همین روش استفاده می کردم ولی خوب ... مشکلی که داره اینه که یه مقدار کند می کنه برنامه رو ... بسیار سپاسگذارم . Salman_MP 10 ارديبهشت 1385, 18:11اگر جدول config یک کلید ( مثلاً PID) داشته باشه خیلی کمک می کنه. یعنی اینجوری. CREATE TABLE config (PID integer unique, name varchar(32), value integer) بعدش به جای position توی users یه کلید خارجی میذاری به config.PID . جدول config هم فقط چهار تا ردیف داره که اینها هستن: PID name value 1 price1 10215 2 price2 34515 3 price3 520215 4 price4 360215 spsgorgan 10 ارديبهشت 1385, 19:34داشتن يك كليد مشترك بين دو جدول خيلي كمك ميكنه كاري كه آقا سلمان گفت كاملا درسته




این صفحه را در گوگل محبوب کنید

[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 1527]

bt

اضافه شدن مطلب/حذف مطلب







-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن