|
הרשם | ![]() |
שאלות ותשובות | ![]() |
רשימת חברים | ![]() |
לוח שנה | ![]() |
הודעות מהיום | ![]() |
חיפוש | ![]() |
|
![]() |
![]() |
|
כלים לאשכול | תצורת הצגה |
![]() |
# 1 |
חבר וותיק
|
MySQL | שאלה לגבי סידור פלט
שלום,
יש לי טבלה המכילה את הטורים order וtitle. עכשיו מה שאני רוצה לעשות זה לשלוף קודם את השורות שבהן order לא שווה לאפס ולסדר אותם בסדר עולה ואחרי השורות הנ"ל לשלוף את שאר השורות בסדר עולה לפי title. חשבתי אולי להכניס if לתוך הorder by אבל זה החזיר לי שגיאה... יש דרך מובנית לעשות את זה או שאני אצטרך לכתוב פונקציה בעצמי? ![]() תודה מראש, כפיר |
![]() |
![]() |
# 2 |
חבר מתקדם
|
WHERE order != 0
__________________
PHP קוד:
|
![]() |
![]() |
# 3 |
חבר וותיק
|
דבר ראשון FuZuL אני רוצה להודות לך על זה שאתה מנסה לעזור
![]() ומה בדיוק אני משיג בזה? במקרה שלא הבנת אני רוצה לשלוף את כל השורות ואני רוצה לשלוף את השורות שבהן order לא שווה אפס ראשונות ולסדר אותן בסדר עולה ולאחר מכן את השורות שבהן order כן שווה לאפס מסודרות בסדר עולה. עם מה שאתה נתת אפשר לפתור את הבעיה בשתי שאילתות כשבאחת אני שולף רק את השורות שבהן order לא שווה לאפס מדפיס אותן מסודרות ואז את השאר. אני כאמור מחפש פתרון בעזרת שאילתה אחת בלבד. יום נעים,כפיר Last edited by Kfir.G; 18-03-08 at 20:19.. |
![]() |
![]() |
# 4 |
משתמש - היכל התהילה
|
http://www.w3schools.com/php/php_mysql_order_by.asp
תקרא את הלמטה, Order by Two Columns אולי זה יעזור לך.
__________________
קו ישר, כי אפשר גם אחרת |
![]() |
![]() |
# 5 |
אחראי קהילה
|
order by תכונה
|
![]() |
![]() |
# 6 | ||
חבר וותיק
|
ציטוט:
ציטוט:
![]() עכשיו order by פשוט לא יעזור כאן שכן הוא יסדר בסדר עולה או יורד תוך כדי התחשבות באפסים! ומאחר שאני לא רוצה שהוא יתחשב באפסים כלומר אני רוצה שהמספרים שאינם שווים לאפס יוצגו בסדר עולה והאפסים יוצגו בסדר עולה לפי הטור השני זה לא עוזר לי... יום טוב, כפיר |
||
![]() |
![]() |
# 7 |
חבר מתקדם
|
חשבת על UNION?
__________________
עבודה מהבית |
![]() |
![]() |
# 8 |
משתמש - היכל התהילה
|
את השורות הראשונות שהORDER שלהם שונה מ0, תהפוך בהם את הערכים של ORDER כך שהכי קטן יבוא אחרון וכך תוכל לסדר את זה בסדר יורד, וכבר לבד כבר השורות עם הorder 0 יבואו אחריהן.
ולשורות שבהן ORDER = 0 ה order by title יכנס לפעולה.
__________________
קו ישר, כי אפשר גם אחרת |
![]() |
![]() |
# 9 | |
חבר וותיק
|
ציטוט:
1 2 3 4 0 0 0 ... ומה שאתה אמרת יסדר לי את זה ככה 4 3 2 1 0 0 0 ... רעיונות נוספים? |
|
![]() |
![]() |
# 10 |
משתמש - היכל התהילה
|
אני אומר לך לארגן את המערכת ORDER שלך הפוך.
שהראשון יהיה זה עם ה ORDER הכי גבוה והאחרון זה עם ההכי נמוך. וכך באופן טבעי כל השורות עם ה 0 יבואו אחרי אלו עם הORDER. _________________________ זו אופציה אחרת: ואתה יכול אחרי השליפה לעשות מיון בPHP. אחרי שאתה שולף את כל אלו עם ORDER שונה מ 0 ואת השאר, אתה מכניס למערך בPHP ועושה מיון
__________________
קו ישר, כי אפשר גם אחרת Last edited by בניה; 18-03-08 at 22:26.. |
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|