פורסם 2006 במאי 2019 שנים אני רוצה לאחד 3 שדות של תאריכים מאותה טבלה ככה שבכל שורה יהיה התאריך המקסימאלי כמו בתמונה הזאת: התאריך בשדה ג הוא המקסימלי ולכן הוא יועבר לשדה החדש מישהו יודע איך עושים את זה?
פורסם 2006 במאי 2019 שנים יש סביבות של SQL (אני במקרה מכיר טוב את זושל אורקל) שבהן יש את הפונקציה greatest - מחזירה את המספר הגדול מבין שני מספרים. במקרה הזה, זה דיי פשוט לעשות את מה שאתה מבקש.select a, b, c, greatest(greatest(a,b),c) dfrom whereverבאיזה סביבה אתה מתכוון לכתוב את השליפה?עריכה:חיפוש קצר בMySql העלה ששם זה עוד יותר פשוט - הפונקציה greatest שם מקבלת מספר לא מוגבל של פרמטרים:select a, b, c, greatest(a,b,c) dfrom wherever
פורסם 2006 במאי 2019 שנים מחבר אחלה תודה רק עוד משהו קטן אני רוצה לסדר את הטבלה לפי השדה החדש הזה כרגע אין לו ממש שם, אז איך אני ממין לפיו? order by greatest(a,b,c)?? עריכה כניראה שכן שוב תודה
פורסם 2006 במאי 2019 שנים מחבר שאלה נוספתאיך אני בודק האם טווח מסויים של תאריכים(היום פלוס 3 ימים) לא נופל על טווח אחר של תאריכיםניסיתי ככה:now()-(now()+3) NOT BETWEEN start AND endאבל זה לא ממש עבד
פורסם 2006 במאי 2019 שנים sd1>=sd2 and sd1<=ed2 or ed1>=sd2 and ed1<=ed2אתה בודק האם ההתחלה או הסוף של הראשון הוא בין 2 התאריכים האחרים.בשבילך:now()>=start and now()<=end or now()+3>=start and now()+3<=endד.א. תבדוק אם זה נכון לרשום now()+3(שזה אכן מוסיף ימים). יש פונ dateadd שמוסיפה אינטרבל כלשהו לתאריך, אך אני לא זוכר איך משתמשים בה. נראה לי: dateadd(now(), "d", 3). הפונ תחזיר לך את התאריך החדש.
פורסם 2006 במאי 2019 שנים חשבתי ש-SQL יודעת לבד להוסיף ימים לתאריך כמו שאמרתי לך קודם - זה תלוי בפלטפורמה - באורקל זה בדיוק ככה. עכשיו תנסה לחשוב מה זה להוסיף דקה או שנייה...
פורסם 2006 במאי 2019 שנים מחבר אני לא מבין למה הסינטקס משתנה בין SQL אחד למשנהו למה משהו שעובד על MySQL לא עובד על MSSQL
פורסם 2006 במאי 2019 שנים אני לא מבין למה הסינטקס משתנה בין SQL אחד למשנהו למה משהו שעובד על MySQL לא עובד על MSSQL הסיבה היא יחסית פשוטה. הSQL הבסיסי (ANSI) מתעדכן לעיתים לא קרובות כל כך (למרות שהתעדכן לא מזמן). כל חברה וכל יצרן החליטו להרחיב אותו קצת כדי שיהיה יותר נוח לעבוד במסד הנתונים שלהם. אורקל הלכה יותר לכיוון של Analytic Functions, מיקרוסופט לכיוון של קלות עבודה וMySQL יורה לכל הכיוונים. אם אתה רוצה לכתוב משהו שיעבוד בכל הפלטפורמות, אתה יכול לכתוב בANSI SQL - ידוע גם כ-SQL99. ב2003 יצא תקן חדש. אורקל, נכון לגרסה 10.2 לא יודעת לתמוך בו בצורה מלאה. גם שאר המוצרים לא, לפי דעתי. הנה עוד על הנושא: http://en.wikipedia.org/wiki/SQL#Standardization
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.