azarbara
چهارشنبه 22 آبان 1392, 13:30 عصر
سلام دوستان عزیز
اولا بگم که من در SQL حرفه ای نیستم. چون اصلا رشته ام این نیست ولی باهاش کار می کنم. الان هم به یک راهنمایی نیاز دارم که امیدوارم مشکلم حل شه.
دوستان من یک Table دارم با فیلدهای مشخص، مثل ID, Title, Date, Type , Description. این جدول من رکوردهای بسیار زیادی داره (در حد 50 هزار تا)
اون طرف قضیه هم یک تیبل دارم با سه تا فیلد ID, FieldID, Value,
حالا من می خوام اطلاعات رو از تیبل اول بریزم به تیبل دوم بطوریکه شرایط زیر برقرار باشه.
اولین رکورد در تیبل اول می خوام به ترتیب بعنوان 5 تا رکورد در فیلد Value تیبل دوم ریخته بشه. بعنوان مثال فرض کنید اولین رکورد جدول اول من به این شکل باشه
<table border="1" cellpadding="1" cellspacing="1" style="width: 500px;">
<tbody>
<tr>
<td>description</td>
<td>Type</td>
<td>date</td>
<td>title</td>
<td>id</td>
</tr>
<tr>
<td>شرح اول</td>
<td>نوع اول</td>
<td>تاریخ اول</td>
<td>عنوان اول</td>
<td>1</td>
</tr>
<tr>
<td>شرح دوم</td>
<td>نوع دوم</td>
<td>تاریخ دوم</td>
<td>عنوان دوم</td>
<td>2</td>
</tr>
<tr>
<td>شرح سوم</td>
<td>نوع سوم</td>
<td>تاریخ سوم</td>
<td>عنوان سوم</td>
<td>3</td>
</tr>
</tbody>
</table>
حالا من می خوام اینا توی یک تیبل بشینه با این شکل
<table>
<tbody>
<tr>
<td>1</td>
<td>36</td>
<td>آی دی اول</td>
</tr>
<tr>
<td>1</td>
<td>37</td>
<td>عنوان اول</td>
</tr>
<tr>
<td>1</td>
<td>38</td>
<td>تاریخ اول</td>
</tr>
<tr>
<td>1</td>
<td>39</td>
<td>نوع اول</td>
</tr>
<tr>
<td>1</td>
<td>40</td>
<td>شرح اول</td>
</tr>
<tr>
<td>2</td>
<td>36</td>
<td>آی دی دوم</td>
</tr>
<tr>
<td>2</td>
<td>37</td>
<td>عنوان دوم</td>
</tr>
<tr>
<td>2</td>
<td>38</td>
<td>تاریخ دوم</td>
</tr>
<tr>
<td>2</td>
<td>39</td>
<td>نوع دوم</td>
</tr>
<tr>
<td>2</td>
<td>40</td>
<td>شرح دوم</td>
</tr>
<tr>
<td>3</td>
<td>36</td>
<td>آی دی سوم</td>
</tr>
<tr>
<td>3</td>
<td>37</td>
<td>عنوان سوم</td>
</tr>
<tr>
<td>3</td>
<td>38</td>
<td>تاریخ سوم</td>
</tr>
<tr>
<td>3</td>
<td>39</td>
<td>نوع سوم</td>
</tr>
<tr>
<td>3</td>
<td>40</td>
<td>شرح سوم</td>
</tr>
</tbody>
</table>
لطفا این کدها رو تو حالت دیزاین ببیند.
چیزی که مشخصه اینه که بعد از انتقال هر سطر جدول اول بعنوان پنج رکورد در فیلد Value تو تیبل دوم یک آی دی می خوره که پنج بار داره تکرار میشه.
و بعد اولین آی دی در جدول اول میاد درخانه های 1و6 و ... به فاصله پنج تا پنج تا میشینه و به همین ترتیب عنوان میاد در خانه های دوم، هفتم و ... (با ترتیب 5 تا 5 تا) می شینه
و به همین ترتیب تا آخر.
چیز دیگری که مشخصه اینه که مثلا آی دی های جدول اول میاد در FieldID=36 میشینه، عنوان میاد در FieldID=37 می شینه، تاریخ در FieldID=38، نوع در FieldID=39 و شرح در FieldID=40 و این روند تا انتها ادامه داره.
حالا من می خواستم این کار رو با Update انجام بدم و یا هر روش دیگری که اساتید پیشنهاد کنن.
هدف انتقال اطلاعات از تیبل قدیمی به جدید با شرایط ذکر شده هستش.
متشکرم بابت وقتی که برای مطالعه، تفکر و پاسخ به این سوال صرف می کنید
اولا بگم که من در SQL حرفه ای نیستم. چون اصلا رشته ام این نیست ولی باهاش کار می کنم. الان هم به یک راهنمایی نیاز دارم که امیدوارم مشکلم حل شه.
دوستان من یک Table دارم با فیلدهای مشخص، مثل ID, Title, Date, Type , Description. این جدول من رکوردهای بسیار زیادی داره (در حد 50 هزار تا)
اون طرف قضیه هم یک تیبل دارم با سه تا فیلد ID, FieldID, Value,
حالا من می خوام اطلاعات رو از تیبل اول بریزم به تیبل دوم بطوریکه شرایط زیر برقرار باشه.
اولین رکورد در تیبل اول می خوام به ترتیب بعنوان 5 تا رکورد در فیلد Value تیبل دوم ریخته بشه. بعنوان مثال فرض کنید اولین رکورد جدول اول من به این شکل باشه
<table border="1" cellpadding="1" cellspacing="1" style="width: 500px;">
<tbody>
<tr>
<td>description</td>
<td>Type</td>
<td>date</td>
<td>title</td>
<td>id</td>
</tr>
<tr>
<td>شرح اول</td>
<td>نوع اول</td>
<td>تاریخ اول</td>
<td>عنوان اول</td>
<td>1</td>
</tr>
<tr>
<td>شرح دوم</td>
<td>نوع دوم</td>
<td>تاریخ دوم</td>
<td>عنوان دوم</td>
<td>2</td>
</tr>
<tr>
<td>شرح سوم</td>
<td>نوع سوم</td>
<td>تاریخ سوم</td>
<td>عنوان سوم</td>
<td>3</td>
</tr>
</tbody>
</table>
حالا من می خوام اینا توی یک تیبل بشینه با این شکل
<table>
<tbody>
<tr>
<td>1</td>
<td>36</td>
<td>آی دی اول</td>
</tr>
<tr>
<td>1</td>
<td>37</td>
<td>عنوان اول</td>
</tr>
<tr>
<td>1</td>
<td>38</td>
<td>تاریخ اول</td>
</tr>
<tr>
<td>1</td>
<td>39</td>
<td>نوع اول</td>
</tr>
<tr>
<td>1</td>
<td>40</td>
<td>شرح اول</td>
</tr>
<tr>
<td>2</td>
<td>36</td>
<td>آی دی دوم</td>
</tr>
<tr>
<td>2</td>
<td>37</td>
<td>عنوان دوم</td>
</tr>
<tr>
<td>2</td>
<td>38</td>
<td>تاریخ دوم</td>
</tr>
<tr>
<td>2</td>
<td>39</td>
<td>نوع دوم</td>
</tr>
<tr>
<td>2</td>
<td>40</td>
<td>شرح دوم</td>
</tr>
<tr>
<td>3</td>
<td>36</td>
<td>آی دی سوم</td>
</tr>
<tr>
<td>3</td>
<td>37</td>
<td>عنوان سوم</td>
</tr>
<tr>
<td>3</td>
<td>38</td>
<td>تاریخ سوم</td>
</tr>
<tr>
<td>3</td>
<td>39</td>
<td>نوع سوم</td>
</tr>
<tr>
<td>3</td>
<td>40</td>
<td>شرح سوم</td>
</tr>
</tbody>
</table>
لطفا این کدها رو تو حالت دیزاین ببیند.
چیزی که مشخصه اینه که بعد از انتقال هر سطر جدول اول بعنوان پنج رکورد در فیلد Value تو تیبل دوم یک آی دی می خوره که پنج بار داره تکرار میشه.
و بعد اولین آی دی در جدول اول میاد درخانه های 1و6 و ... به فاصله پنج تا پنج تا میشینه و به همین ترتیب عنوان میاد در خانه های دوم، هفتم و ... (با ترتیب 5 تا 5 تا) می شینه
و به همین ترتیب تا آخر.
چیز دیگری که مشخصه اینه که مثلا آی دی های جدول اول میاد در FieldID=36 میشینه، عنوان میاد در FieldID=37 می شینه، تاریخ در FieldID=38، نوع در FieldID=39 و شرح در FieldID=40 و این روند تا انتها ادامه داره.
حالا من می خواستم این کار رو با Update انجام بدم و یا هر روش دیگری که اساتید پیشنهاد کنن.
هدف انتقال اطلاعات از تیبل قدیمی به جدید با شرایط ذکر شده هستش.
متشکرم بابت وقتی که برای مطالعه، تفکر و پاسخ به این سوال صرف می کنید