tolid123456789
سه شنبه 05 آذر 1392, 10:54 صبح
سلام
ما در نرم افزارهايي مثل Access مي تونستيم query با يك شرط پارامتري تعريف كنيم و بعد يك query ديگه از query اول بسازيم بدون اضافه كردن اون فيلدي كه شرط پارامتري داره . با اين كار مي تونستيم query دوم رو بدون فيلدي كه شرط پارامتري داره گروه بندي كنيم و در زمانهايي كه دنبال تجميع ركوردها بوديم در عين حال كه فيلد شرطي پارامتري داشتيم از حضور اين فيلد در query نهايي جلوگيري كنيم تا گروه بندي رو با مشكل مواجه نكنه.
الان من دقيقا اين مسئله رو با SQL و برنامه اي كه در VB.net مي نويسم دارم .
فرض كنيد جدولي مشابه زير دارم:
كد دانشجو+نام دانشجو+كد ترم+نمره مثبت
1+حسين+1+100
1+حسين+1+200
1+حسين+2+100
حالا مي خوام مجموع نمره هاي مثبت حسين(كد دانشجوي 1) رو با شرط پارامتري روي فيلد كد ترم (مثلا ترم هايي كه كدشون كوچكتر از 3 هست)انجام بدم.
سئوال:
من يك View (بدون پارامتر) ساختم و گروه بندي رو انجام مي دم و روي فيلد نمره مثبت sum رو قرار مي دم.
بعد اين ويو رو در vb.net بهش پارامتر ميدم(ظاهرا پارامتر رو نمي تونيم در view در sql اضافه كنيم)
مشكل اينجا شروع ميشه:
اولا view من خروجي زير رو داره:
كد دانشجو+نام دانشجو+كد ترم+نمره مثبت
1+حسين+1+300
1+حسين+2+100
ولي من در datagrid vb.net مي خوام جدول زير رو نمايش بدم (من مجموع نمرات مثبت رو مي خوام و برام مهم نيست در ديتا گريد كد ترم بياد)
كد دانشجو+نام دانشجو+نمره مثبت
1+حسين+400
اگر مثل روشي كه در access بود ميشد عمل كرد ابتدا يك query از جدولم مي گرفتم و گروه بنديش مي كردم و شرط پارامتري روي فيلد هاي كد دانشجو و كد ترم ميذاشتم و جدول زير به وجود مي اومد:
كد دانشجو+نام دانشجو+كد ترم+نمره مثبت
1+حسين+1+100
1+حسين+1+200
1+حسين+2+100
حالا در query دوم از همين query استفاده مي كردم و ديگه فيلد كد ترم رو اضافه نمي كردم و sum رو روي فيلدنمره مثبت قرار مي دادم و جدول خروجي بدست مي يومد و مشكل منم حل ميشد:
كد دانشجو+نام دانشجو+نمره مثبت
1+حسين+400
----------------------------------------------------------------------------------------------------------------
به عبارتي من در vb.net وقتي دارم datagrid رو پر مي كنم از كد sql ي مي خوام استفاده كنم كه خودش فيلد شرطي پارامتريم(كد ترم) رو نداشته باشه (براي اينكه گروه بنديم رو خراب ميكنه) ولي خودش از view يا هر امكان ديگه اي تغذيه بشه كه شرط پارامتري رو ساپورت كنه.
اميدوارم موضوع رو تونسته باشم خوب توضيح بدم در ضمن اين موضوع مسئله اين بين sql و vb.net بود درقسمت sql سئوال رو توضيح دادم در قسمت vb.net هم گذاشتم جون با اين قسمت بيشتر فعاليت داشتم.
ممنون از توجهتون.
ما در نرم افزارهايي مثل Access مي تونستيم query با يك شرط پارامتري تعريف كنيم و بعد يك query ديگه از query اول بسازيم بدون اضافه كردن اون فيلدي كه شرط پارامتري داره . با اين كار مي تونستيم query دوم رو بدون فيلدي كه شرط پارامتري داره گروه بندي كنيم و در زمانهايي كه دنبال تجميع ركوردها بوديم در عين حال كه فيلد شرطي پارامتري داشتيم از حضور اين فيلد در query نهايي جلوگيري كنيم تا گروه بندي رو با مشكل مواجه نكنه.
الان من دقيقا اين مسئله رو با SQL و برنامه اي كه در VB.net مي نويسم دارم .
فرض كنيد جدولي مشابه زير دارم:
كد دانشجو+نام دانشجو+كد ترم+نمره مثبت
1+حسين+1+100
1+حسين+1+200
1+حسين+2+100
حالا مي خوام مجموع نمره هاي مثبت حسين(كد دانشجوي 1) رو با شرط پارامتري روي فيلد كد ترم (مثلا ترم هايي كه كدشون كوچكتر از 3 هست)انجام بدم.
سئوال:
من يك View (بدون پارامتر) ساختم و گروه بندي رو انجام مي دم و روي فيلد نمره مثبت sum رو قرار مي دم.
بعد اين ويو رو در vb.net بهش پارامتر ميدم(ظاهرا پارامتر رو نمي تونيم در view در sql اضافه كنيم)
مشكل اينجا شروع ميشه:
اولا view من خروجي زير رو داره:
كد دانشجو+نام دانشجو+كد ترم+نمره مثبت
1+حسين+1+300
1+حسين+2+100
ولي من در datagrid vb.net مي خوام جدول زير رو نمايش بدم (من مجموع نمرات مثبت رو مي خوام و برام مهم نيست در ديتا گريد كد ترم بياد)
كد دانشجو+نام دانشجو+نمره مثبت
1+حسين+400
اگر مثل روشي كه در access بود ميشد عمل كرد ابتدا يك query از جدولم مي گرفتم و گروه بنديش مي كردم و شرط پارامتري روي فيلد هاي كد دانشجو و كد ترم ميذاشتم و جدول زير به وجود مي اومد:
كد دانشجو+نام دانشجو+كد ترم+نمره مثبت
1+حسين+1+100
1+حسين+1+200
1+حسين+2+100
حالا در query دوم از همين query استفاده مي كردم و ديگه فيلد كد ترم رو اضافه نمي كردم و sum رو روي فيلدنمره مثبت قرار مي دادم و جدول خروجي بدست مي يومد و مشكل منم حل ميشد:
كد دانشجو+نام دانشجو+نمره مثبت
1+حسين+400
----------------------------------------------------------------------------------------------------------------
به عبارتي من در vb.net وقتي دارم datagrid رو پر مي كنم از كد sql ي مي خوام استفاده كنم كه خودش فيلد شرطي پارامتريم(كد ترم) رو نداشته باشه (براي اينكه گروه بنديم رو خراب ميكنه) ولي خودش از view يا هر امكان ديگه اي تغذيه بشه كه شرط پارامتري رو ساپورت كنه.
اميدوارم موضوع رو تونسته باشم خوب توضيح بدم در ضمن اين موضوع مسئله اين بين sql و vb.net بود درقسمت sql سئوال رو توضيح دادم در قسمت vb.net هم گذاشتم جون با اين قسمت بيشتر فعاليت داشتم.
ممنون از توجهتون.