امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
جمع کل ستون
نویسنده پیام
The.Ghost غایب
مدیر بازنشسته
*****

ارسال‌ها: 461
موضوع‌ها: 201
تاریخ عضویت: مهر ۱۳۸۸

تشکرها : 674
( 354 تشکر در 158 ارسال )
ارسال: #1
جمع کل ستون
سلام
من می خواهم در اس کیو ال سرور  کوئری بنویسم که برای مثال تاریخ اول آخر مشخص کنم بعد جنسیت هم مشخص کنم بعد بگه از این تاریخ تا این تاریخ کلا چند نفر مرد ثبت شده است، جمع کل می خواهم که برای مثال بگه 17 نفر یعنی کلا یک رکورد داشته باشم که اونم جمع کل باشه

با تشکر فراوان.


کد:
SELECT  COUNT(PSex) AS Count8
FROM         TParvande
GROUP BY PSex, PDateB
HAVING      (PDateB >= '1394/01/01') AND (PDateB <= '1394/04/31') AND (PSex = 'مرد')

Assembly Language 039

۰۳-مرداد-۱۳۹۴, ۱۱:۵۲:۵۰
ارسال‌ها
پاسخ
far_222000 آفلاین
مدير بخش ديتابيس
*****

ارسال‌ها: 955
موضوع‌ها: 68
تاریخ عضویت: شهریور ۱۳۸۴

تشکرها : 468
( 1249 تشکر در 422 ارسال )
ارسال: #2
RE: جمع کل ستون
اول از همه تاریخ ها رو به صورت عدد ثبت کن! یعنی تاریخ 1394/5/3 رو باید 13940503 ذخیره کنی! اینجوری قابلیت مقایسه تاریخ ها درست می شه.

حالا کوئری رو به این شکل می نویسین:


کد:
SELECT COUNT(PSex) AS Count8 FROM TParvande WHERE PDateB >= 13940101 AND PDateB <= 13940431 AND PSex = 'مرد'

پارک24
مرجع خرید و فروش خودرو
۰۳-مرداد-۱۳۹۴, ۱۲:۰۴:۳۵
وب سایت ارسال‌ها
پاسخ
The.Ghost غایب
مدیر بازنشسته
*****

ارسال‌ها: 461
موضوع‌ها: 201
تاریخ عضویت: مهر ۱۳۸۸

تشکرها : 674
( 354 تشکر در 158 ارسال )
ارسال: #3
RE: جمع کل ستون
ممنون.
چرا وقتی من این کد میزنم تعداد 72 تا می باشد.
کد:
SELECT PSex
FROM         TParvande
GROUP BY PSex, PDateB
HAVING      (PDateB >= '1394/01/01') AND (PDateB <= '1394/04/31') AND (PSex = 'مرد')

بعد این کد میزنم تعداد میشه 255 تا برای چی این طوری میشه
کد:
SELECT PSex --, COUNT(PSex) AS Count8
FROM TParvande
WHERE (PDateB >= '1394/01/01') AND (PDateB <= '1394/04/31') AND (PSex = 'مرد')


بعد چرا باید تاریخ ها به صورت عددی ثبت کنم؟؟؟؟؟؟

Assembly Language 039

۰۳-مرداد-۱۳۹۴, ۱۲:۲۴:۲۱
ارسال‌ها
پاسخ
far_222000 آفلاین
مدير بخش ديتابيس
*****

ارسال‌ها: 955
موضوع‌ها: 68
تاریخ عضویت: شهریور ۱۳۸۴

تشکرها : 468
( 1249 تشکر در 422 ارسال )
ارسال: #4
RE: جمع کل ستون
علتش اینه که توی دستور خودتون از GROUP BY استفاده کردین و PDateB رو برای Group کردن بهش دادین! این به این معنیه که اگه 5 نفر مرد توی یک روز ثبت نام کنن، فقط 1 رکورد برمی گرده!

حتماً نباید تاریخ ها رو به صورت عددی ثبت کنید، ولی کلاً کار کردن با اعداد راحت تر از کار کردن با تاریخ شمسیه!

پارک24
مرجع خرید و فروش خودرو
۰۳-مرداد-۱۳۹۴, ۱۳:۰۳:۲۵
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : Ghoghnus, The.Ghost


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  مشکل با جمع یک ستون rwww 2 2,562 ۲۵-اسفند-۱۳۹۲, ۰۱:۴۶:۲۸
آخرین ارسال: فاطمه وطن دوست
  نمايش سه ستون در يك ستون iran58 2 3,226 ۰۵-مهر-۱۳۸۹, ۰۱:۳۷:۳۱
آخرین ارسال: mojtabamalaekeh
  بدست آوردن اطلاعات يك متغيير از سه ستون iran58 1 3,027 ۲۸-شهریور-۱۳۸۹, ۱۰:۰۰:۵۱
آخرین ارسال: lord_viper
  جستجو در دو ستون iran58 0 2,470 ۲۱-شهریور-۱۳۸۹, ۱۴:۳۷:۴۳
آخرین ارسال: iran58

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS