PDA

View Full Version : mysql syntax



houtanal
سه شنبه 27 مرداد 1383, 15:04 عصر
من یک پرس و جو دارم که بر اساس محتویات دریافت شده از سشن کار می کند
من سعی کردم از این روش استفاده کنم اما نشد


SELECT * FROM TB WHERE book_title=book1,book2

یعنی می خواهم از یک جدول تمامی رکورد هایی که نامشان با متغییر های نامعلوم از نظر تعداد را انتخاب کنم.
آیا راهی بجز استفاده از UNION هست؟

oxygenws
سه شنبه 27 مرداد 1383, 17:41 عصر
من منظور سوالت رو نفهمیدم!!! می تونی بیشتر توضیح بدی؟؟ مرسی

houtanal
سه شنبه 27 مرداد 1383, 18:07 عصر
من می خوام از جدولم یکسری رکورد را انتخاب کنم منتها چون از تعداد متغییر هام معلوم نیست می خوام به بانک اطلاعاتی بگم که مثلا این و این و اینو برام انتخاب کن

oxygenws
سه شنبه 27 مرداد 1383, 22:14 عصر
هنوز هم گنگه برام!!!
منظورتون چیزی شبیه اینه؟؟ این سیکوئل فیلد های نام و نام خانوادگی رو برمی گردونه.


select name, family from userinfo where username='asghar'

houtanal
چهارشنبه 28 مرداد 1383, 10:34 صبح
:cry: :cry: :cry: :cry: :cry: :cry: :cry:
بابا اون پرس و جوی بالا رو ببین متوجه میشی مثلا


SELECT * FROM TB WHERE id=$i
می خوام بگم اگر id مساوی i بود آن رکورد را انتخاب کن


SELECT * FROM TB WHERE id=$j

حالا می خوام این دو پرس و جو را بدون UNION یکی کنم

whitehat
چهارشنبه 28 مرداد 1383, 12:56 عصر
سلام
با این $ هایی که گذاشتید فکر کنم منظور شما در زبان php باشه :oops:
یعنی شما دو متغیر به صفحه php می فرستید بعد می خواهید اطلاعات مربوط به هر دو را نمایش دهد درسته؟
ببینید دنبال این کد می گردید؟

select * from TB where id=$i or id=$j

اگر این نبود دقیق تر بگویید .
موفق باشید

houtanal
چهارشنبه 28 مرداد 1383, 13:50 عصر
نه نمی خواهم به صورت شرطی باشد(OR) می خواهم دو رکورد را انتخاب کنم
می خوام این دو پرس و جو را بدون UNION یکی کنم

whitehat
چهارشنبه 28 مرداد 1383, 14:06 عصر
select * from (select * from TB where id=$i) TB1,(select * from TB where id=$j) TB2 where TB1.key=TB2.key
این چطوره ؟ key ها کلید های اصلی هستند.
موفق باشید

houtanal
چهارشنبه 28 مرداد 1383, 17:11 عصر
خوب شد بالاخره یکی فهمید چی میگم (:D)
راه دیگه ای نداره ؟ چون من فقط می خوام با یک جدول کار کنم

whitehat
چهارشنبه 28 مرداد 1383, 17:52 عصر
دوست عزیز اینم کار با یک جدوله :wink:
اون TB1 و TB2 در اصل دو متغیر هستند که به یک جدول(TB) به صورت مجازی اشاره می کنند (:D)
میشه گفت به نوعی یک تعریف متغیر در SQL است.
موفق باشید

houtanal
چهارشنبه 28 مرداد 1383, 18:52 عصر
میشه گفت به نوعی یک تعریف متغیر در SQL است.متوجه شدم دستت درد نکنه

oxygenws
چهارشنبه 28 مرداد 1383, 18:56 عصر
ببین این سیکوئل به دردت می خوره :)
امیدوارم این دفعه فهمیده باشم :)


SELECT t1.* FROM table AS t1, table AS t2 WHERE t1.key=t2.key AND t1.id=$i AND t2.id=$j


موفق باشید، امید