PDA

View Full Version : سی شارپ و sql



آرام جان گل
شنبه 02 تیر 1386, 23:20 عصر
سلام

من برنامه یک کتابخانه رو می نویسم و در محیطsql جدولی دارم برای اسنادم( کتاب و سی دی و مقاله و نامه و نشریه و............) که چندین ستون دارد مثل عنوان نوسنده زبان نوع گروه ناشر و .............
هر کدام از این اسناد نوعش در ستون ( نوع )مشخص شده (همون کتاب و مقاله و سی دی ......) و در ضمن زبان سندم هم مشخص شده (فارسی و لاتین )
ستون( نوع سند) کلید خارجی است که مقدارش را از یک جدول دیگه می گیره و ستون زبان هم nvarchar که مقدارش (فارسی و یا لاتین ) است
حالا بریم سراغ محیط سی شارپ :

من در بخشی از برنامه که کار جستجو را برای کاربر انجام می دهد چند تا چک باکس دارم که این ها نو ع و زبان سند دلخواه کاربر را چک می کنند مثلا چک باکس های من این طوریند:
کتابهای فارسی
کتابهای لاتین
سی دی های فارسی
سی دی های لاتین
مقالات فارسی
.
.
.
.
.
همانطور که پیداست در هرکدام از چک باکس ها نوع و زبان سند با هم چک خواهد شد
بعد به دنبال سند دلخواه کاربر می گردد و حالا در این جا مشکل من شروع می شود
من می خوام که رشته sql ای برای search بنویسم که اطلاعات یافته شده را دسته بندی شده به کاربر نمایش دهد مثلا بگو ید که چند تا کتاب فارسی پیدا کرده و یا چند تا سی دی لاتین پیدا کرده
انچه مهم است اینه که تعدادرا بگه و دسته بندی را انجام بدهد
اون چیزی که به ذهن من می رسه اینه که از رشته زیر استفاده کنم

select " my field" ,count (*) ………………………….. group by " my field"
اما این رشته یافته های مرا بر اساس فقط یک ستون و ان هم ستون "field " که یکی از ستون های جدول است مرتب خواهد کرد و با تعداد (زcount)نمایش می دهد
در حالی که من دو ستون را باید مورد بررسی قرار دهم ستون نوع سند و ستون ز بان
حالااز چه رشته ای استفاده کنم یا از چه ترفندی استفاده کنم یا چه تغییری در پایگاه و جدولم انجانم دهم تا بتونم این کار را انجام بدم؟
لطفا خیلی راهنمایی کنید
بسیار ممنون

ghafoori
یک شنبه 03 تیر 1386, 06:47 صبح
دوست عزیز چرا شرط روی دستورتان نمی گذارید مثلا شما گفتید

در حالی که من دو ستون را باید مورد بررسی قرار دهم ستون نوع سند و ستون ز بان
خوب شما همراه با دستور group by دو شرط هم بگذارید تا مثلا زبان فقط انگلیسی باشد و نوع سند هم مثلا کتاب باشد

Future
یک شنبه 03 تیر 1386, 07:08 صبح
دوست عزیز تو GroupBy از Having هم برای 2 تا ستون یا هر چندتایی که می خواهید استفاده کنید