דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. איך כדאי למספר עמודה משנית בpostgresql?

איך כדאי למספר עמודה משנית בpostgresql?

מתוזמן נעוץ נעול הועבר תכנות
22 פוסטים 5 כותבים 1.1k צפיות 4 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • yossizY
    yossizY
    yossiz
    כתב ב נערך לאחרונה על ידי yossiz
    #11

    זו אותה שאלה שאני שאלתי בעבר?
    https://tchumim.com/post/111656

    📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה
    👈 רוצים כתובת מייל בעברית? כנסו למייל.קום 👉

    OdedDvirO תגובה 1 תגובה אחרונה
    3
    • yossizY yossiz

      זו אותה שאלה שאני שאלתי בעבר?
      https://tchumim.com/post/111656

      OdedDvirO
      OdedDvirO
      OdedDvir
      כתב ב נערך לאחרונה על ידי OdedDvir
      #12

      @yossiz אמר באיך כדאי למספר עמודה משנית בpostgresql?:

      זו אותה שאלה שאני שאלתי בעבר?

      כך זה נראה. אמנם פונקציית חלון לא הייתה קיימת בגרסאות 9.5 ומטה, כך שאיני יודע אם בזמן השאלה היה קיים הפתרון הנ"ל.

      yossizY תגובה 1 תגובה אחרונה
      0
      • OdedDvirO OdedDvir

        @yossiz אמר באיך כדאי למספר עמודה משנית בpostgresql?:

        זו אותה שאלה שאני שאלתי בעבר?

        כך זה נראה. אמנם פונקציית חלון לא הייתה קיימת בגרסאות 9.5 ומטה, כך שאיני יודע אם בזמן השאלה היה קיים הפתרון הנ"ל.

        yossizY
        yossizY
        yossiz
        כתב ב נערך לאחרונה על ידי
        #13

        @odeddvir אני עובר על הפוסטים שם, וא) אני מבין שהיום אני מבין פחות ב-DB-ים ממה שהבנתי אז... ב) אני רואה שיצא לי שגם אם עושים את הכל במשפט SQL אחת זה לא פותר את בעיית ההתנגשויות, כך שאני לא בטוח שפונקציית חלון יעזור פה.

        📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה
        👈 רוצים כתובת מייל בעברית? כנסו למייל.קום 👉

        תגובה 1 תגובה אחרונה
        3
        • OdedDvirO OdedDvir

          @nigun אם השתמשת ב window_function כפי שהציע @dovid אתה בכלל לא צריך Sequence, וזה הרבה יותר פשוט. ראית שם את התשובה השניה? שיניתי אותה למקרה שלך:

          INSERT INTO YourTable
              (user, sub_id, DATA)
              SELECT user, ROW_NUMBER() OVER(PARTITION BY user ORDER BY DATA), DATA
                  FROM YourSource
          
          nigunN
          nigunN
          nigun
          כתב ב נערך לאחרונה על ידי nigun
          #14

          @odeddvir
          ראיתי שם את התשובה השניה והתחלתי לשחק עם השאילתות לראות איך זה עובד.
          סתם נסחפתי לנושא של הפרמטרים.
          את הרעיון של sequence קיבלתי מהמדריך הזה
          שמסביר איך הסוג עמודה SERIAL עובד

          CREATE SEQUENCE table_name_id_seq;
          
          CREATE TABLE table_name (
              id integer NOT NULL DEFAULT nextval('table_name_id_seq')
          );
          
          ALTER SEQUENCE table_name_id_seq
          OWNED BY table_name.id;
          

          חשבתי שהסיבה שבחרו בדרך הזאת זה כנראה בגלל יעילות
          אז למה שאני לא יעשה ככה גם.

          עכשיו אני מנסה להבין מה ROW_NUMBER() עושה מאחורי הקלעים ונראה האם זה יעיל או סתם נועל את כל הטבלה ללא צורך?
          ובמה זה שונה משאילתת MAX?

          מייל: nigun@duck.com

          dovidD תגובה 1 תגובה אחרונה
          0
          • nigunN nigun

            @odeddvir
            ראיתי שם את התשובה השניה והתחלתי לשחק עם השאילתות לראות איך זה עובד.
            סתם נסחפתי לנושא של הפרמטרים.
            את הרעיון של sequence קיבלתי מהמדריך הזה
            שמסביר איך הסוג עמודה SERIAL עובד

            CREATE SEQUENCE table_name_id_seq;
            
            CREATE TABLE table_name (
                id integer NOT NULL DEFAULT nextval('table_name_id_seq')
            );
            
            ALTER SEQUENCE table_name_id_seq
            OWNED BY table_name.id;
            

            חשבתי שהסיבה שבחרו בדרך הזאת זה כנראה בגלל יעילות
            אז למה שאני לא יעשה ככה גם.

            עכשיו אני מנסה להבין מה ROW_NUMBER() עושה מאחורי הקלעים ונראה האם זה יעיל או סתם נועל את כל הטבלה ללא צורך?
            ובמה זה שונה משאילתת MAX?

            dovidD
            dovidD
            dovid
            ניהול
            כתב ב נערך לאחרונה על ידי
            #15

            אני פתאום חושב שwindow function לא עוזר כלום למקביליות,
            בעוד הsequence עשוי עבור זה.

            • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
            • בכל נושא אפשר ליצור קשר dovid@tchumim.com
            yossizY תגובה 1 תגובה אחרונה
            3
            • dovidD dovid

              אני פתאום חושב שwindow function לא עוזר כלום למקביליות,
              בעוד הsequence עשוי עבור זה.

              yossizY
              yossizY
              yossiz
              כתב ב נערך לאחרונה על ידי yossiz
              #16

              @dovid אמר באיך כדאי למספר עמודה משנית בpostgresql?:

              אני פתאום חושב

              זה מה שטענתי למעלה...

              📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה
              👈 רוצים כתובת מייל בעברית? כנסו למייל.קום 👉

              מנצפךמ תגובה 1 תגובה אחרונה
              2
              • yossizY yossiz

                @dovid אמר באיך כדאי למספר עמודה משנית בpostgresql?:

                אני פתאום חושב

                זה מה שטענתי למעלה...

                מנצפךמ
                מנצפךמ
                מנצפך
                כתב ב נערך לאחרונה על ידי
                #17

                ליתר בטחון תעשה כלל uniqe על 2 העמודות הללו ביחד.
                ואז לא יהיה מצב של כפילות. מקסימום אתה מריץ כמה פעמים את השאילתה (לדעתי זה הפתרון הכי קל, להריץ בלולאה עם כמה ניסיונות- attempts).

                (אגב, אני לא מצליח להיזכר בדיוק, אבל יש מנגנון דומה בעוד מקומות של התנגשות, אולי של התנגשות בגישה לרשומת ב DB או סתם מערכת קבצים, ואז כל תהליך מנסה להמתין זמן רנדומלי, וכו, לא זוכר את הסוף)

                yossizY nigunN 2 תגובות תגובה אחרונה
                1
                • מנצפךמ מנצפך

                  ליתר בטחון תעשה כלל uniqe על 2 העמודות הללו ביחד.
                  ואז לא יהיה מצב של כפילות. מקסימום אתה מריץ כמה פעמים את השאילתה (לדעתי זה הפתרון הכי קל, להריץ בלולאה עם כמה ניסיונות- attempts).

                  (אגב, אני לא מצליח להיזכר בדיוק, אבל יש מנגנון דומה בעוד מקומות של התנגשות, אולי של התנגשות בגישה לרשומת ב DB או סתם מערכת קבצים, ואז כל תהליך מנסה להמתין זמן רנדומלי, וכו, לא זוכר את הסוף)

                  yossizY
                  yossizY
                  yossiz
                  כתב ב נערך לאחרונה על ידי
                  #18

                  @מנצפך אמר באיך כדאי למספר עמודה משנית בpostgresql?:

                  (אגב, אני לא מצליח להיזכר בדיוק, אבל יש מנגנון דומה בעוד מקומות של התנגשות, אולי של התנגשות בגישה לרשומת ב DB או סתם מערכת קבצים, ואז כל תהליך מנסה להמתין זמן רנדומלי, וכו, לא זוכר את הסוף)

                  אולי https://en.wikipedia.org/wiki/Exponential_backoff?

                  📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה
                  👈 רוצים כתובת מייל בעברית? כנסו למייל.קום 👉

                  תגובה 1 תגובה אחרונה
                  0
                  • מנצפךמ מנצפך

                    ליתר בטחון תעשה כלל uniqe על 2 העמודות הללו ביחד.
                    ואז לא יהיה מצב של כפילות. מקסימום אתה מריץ כמה פעמים את השאילתה (לדעתי זה הפתרון הכי קל, להריץ בלולאה עם כמה ניסיונות- attempts).

                    (אגב, אני לא מצליח להיזכר בדיוק, אבל יש מנגנון דומה בעוד מקומות של התנגשות, אולי של התנגשות בגישה לרשומת ב DB או סתם מערכת קבצים, ואז כל תהליך מנסה להמתין זמן רנדומלי, וכו, לא זוכר את הסוף)

                    nigunN
                    nigunN
                    nigun
                    כתב ב נערך לאחרונה על ידי
                    #19

                    @מנצפך אמר באיך כדאי למספר עמודה משנית בpostgresql?:

                    ליתר בטחון תעשה כלל uniqe על 2 העמודות הללו ביחד.

                    אני רוצה שיהיה יוניק רק ביחס לעמודה השניה, לא ביחס לכל הטבלה.
                    וכן אני רוצה שיהיה אפשרות לשנות את המספור בשעת הצורך

                    מייל: nigun@duck.com

                    yossizY תגובה 1 תגובה אחרונה
                    0
                    • nigunN nigun

                      @מנצפך אמר באיך כדאי למספר עמודה משנית בpostgresql?:

                      ליתר בטחון תעשה כלל uniqe על 2 העמודות הללו ביחד.

                      אני רוצה שיהיה יוניק רק ביחס לעמודה השניה, לא ביחס לכל הטבלה.
                      וכן אני רוצה שיהיה אפשרות לשנות את המספור בשעת הצורך

                      yossizY
                      yossizY
                      yossiz
                      כתב ב נערך לאחרונה על ידי yossiz
                      #20

                      @nigun אמר באיך כדאי למספר עמודה משנית בpostgresql?:

                      אני רוצה שיהיה יוניק רק ביחס לעמודה השניה, לא ביחס לכל הטבלה.

                      @מנצפך אמר באיך כדאי למספר עמודה משנית בpostgresql?:

                      תעשה כלל uniqe על 2 העמודות הללו ביחד

                      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה
                      👈 רוצים כתובת מייל בעברית? כנסו למייל.קום 👉

                      nigunN תגובה 1 תגובה אחרונה
                      0
                      • yossizY yossiz

                        @nigun אמר באיך כדאי למספר עמודה משנית בpostgresql?:

                        אני רוצה שיהיה יוניק רק ביחס לעמודה השניה, לא ביחס לכל הטבלה.

                        @מנצפך אמר באיך כדאי למספר עמודה משנית בpostgresql?:

                        תעשה כלל uniqe על 2 העמודות הללו ביחד

                        nigunN
                        nigunN
                        nigun
                        כתב ב נערך לאחרונה על ידי
                        #21

                        @yossiz אמר באיך כדאי למספר עמודה משנית בpostgresql?:

                        תעשה כלל uniqe על 2 העמודות הללו ביחד

                        באר
                        לא הבנתי מה זה אומר

                        מייל: nigun@duck.com

                        OdedDvirO תגובה 1 תגובה אחרונה
                        0
                        • nigunN nigun

                          @yossiz אמר באיך כדאי למספר עמודה משנית בpostgresql?:

                          תעשה כלל uniqe על 2 העמודות הללו ביחד

                          באר
                          לא הבנתי מה זה אומר

                          OdedDvirO
                          OdedDvirO
                          OdedDvir
                          כתב ב נערך לאחרונה על ידי
                          #22

                          @nigun אני חושב שהוא התכוון למפתח מרוכב Composite-Key

                          תגובה 1 תגובה אחרונה
                          2

                          שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

                          נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

                          בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                          הרשמה התחברות
                          תגובה
                          • תגובה כנושא
                          התחברו כדי לפרסם תגובה
                          • מהישן לחדש
                          • מהחדש לישן
                          • הכי הרבה הצבעות


                          • 1
                          • 2
                          בא תתחבר לדף היומי!
                          • התחברות

                          • אין לך חשבון עדיין? הרשמה

                          • התחברו או הירשמו כדי לחפש.
                          • פוסט ראשון
                            פוסט אחרון
                          0
                          • דף הבית
                          • קטגוריות
                          • פוסטים אחרונים
                          • משתמשים
                          • חיפוש
                          • חוקי הפורום