none
help! simple question for beginers RRS feed

תשובות

  • היי אריאל,

    אני חושב שהוא יודע איך בונים טבלה אבל לא יודע איך להתנסח.

    לפי מה שהבנתי ממנו הוא צריך שאילטה שתחזיר את הערכים 1 עד 5 .

    היי אלון יש כמה וכמה דרכים לעשות מה שאתה רוצה השאלה היא מה המטרה.

    DECLARE @min int = 1;
    DECLARE @max int = 5;
    
    with t as ( SELECT
    	@min x UNION ALL SELECT
    	x + 1
    FROM t
    WHERE x < @max)
    SELECT
    	x
    FROM t

    • הוצע כתשובה על-ידי pituachMVP, Editor יום שלישי 29 ינואר 2013 13:54
    • סומן כתשובה על-ידי pituachMVP, Editor יום שלישי 05 פברואר 2013 13:15
    יום שלישי 29 ינואר 2013 10:55
  • הי אלון,

    הנה הפתרון שלי:

    CREATE TABLE
    	dbo.Numbers
    (
    	Value INT NOT NULL
    );
    GO
    
    
    DECLARE
    	@Min	AS INT	= 1 ,
    	@Max	AS INT	= 5;
    
    INSERT INTO
    	dbo.Numbers
    (
    	Value
    )
    SELECT TOP (@Max - @Min + 1)
    	Value = @Min - 1 + ROW_NUMBER () OVER (ORDER BY (SELECT NULL) ASC)
    FROM
    	sys.all_columns AS T1
    CROSS JOIN
    	sys.all_columns AS T2;
    GO
    
    
    SELECT
    	Value
    FROM
    	dbo.Numbers
    ORDER BY
    	Value ASC;
    GO
    

    בהצלחה!

    -----------------------------
    גיא גלנצר
    יועץ ומדריך SQL Server
    Madeira - SQL Server Services
    http://www.madeira.co.il

    • סומן כתשובה על-ידי pituachMVP, Editor יום שלישי 05 פברואר 2013 13:15
    יום רביעי 30 ינואר 2013 07:43
    מנחה דיון

כל התגובות

  • בוקר טוב אלון

    אני מאוד ממליץ לך להתרגל לעבוד עם מנועי חיפוש כמו גוגל. למשל חיפוש פשוט של המילים sql create table יכול להביא לך כמה אלפי מדריכים טובים:

    https://www.google.co.il/search?q=sql+create+table

    הנה קישור למדריך ליצירת טבלאות (כדאי לעבור על כל המדריך מההתחלה בצורה מסודרת ולא רק על הקישור המסויים):

    http://www.w3schools.com/sql/sql_create_table.asp

    ניתן גם לבנות טבלה בעזרת הממשק הגרפי: http://www.youtube.com/watch?v=8l5Hw4kQE8o


    signature

    יום שלישי 29 ינואר 2013 04:58
    מנחה דיון
  • היי אריאל,

    אני חושב שהוא יודע איך בונים טבלה אבל לא יודע איך להתנסח.

    לפי מה שהבנתי ממנו הוא צריך שאילטה שתחזיר את הערכים 1 עד 5 .

    היי אלון יש כמה וכמה דרכים לעשות מה שאתה רוצה השאלה היא מה המטרה.

    DECLARE @min int = 1;
    DECLARE @max int = 5;
    
    with t as ( SELECT
    	@min x UNION ALL SELECT
    	x + 1
    FROM t
    WHERE x < @max)
    SELECT
    	x
    FROM t

    • הוצע כתשובה על-ידי pituachMVP, Editor יום שלישי 29 ינואר 2013 13:54
    • סומן כתשובה על-ידי pituachMVP, Editor יום שלישי 05 פברואר 2013 13:15
    יום שלישי 29 ינואר 2013 10:55
  • נראה שאתה צודק :-) הבנתי אותו לא נכון


    signature

    יום שלישי 29 ינואר 2013 13:54
    מנחה דיון
  • הי אלון,

    הנה הפתרון שלי:

    CREATE TABLE
    	dbo.Numbers
    (
    	Value INT NOT NULL
    );
    GO
    
    
    DECLARE
    	@Min	AS INT	= 1 ,
    	@Max	AS INT	= 5;
    
    INSERT INTO
    	dbo.Numbers
    (
    	Value
    )
    SELECT TOP (@Max - @Min + 1)
    	Value = @Min - 1 + ROW_NUMBER () OVER (ORDER BY (SELECT NULL) ASC)
    FROM
    	sys.all_columns AS T1
    CROSS JOIN
    	sys.all_columns AS T2;
    GO
    
    
    SELECT
    	Value
    FROM
    	dbo.Numbers
    ORDER BY
    	Value ASC;
    GO
    

    בהצלחה!

    -----------------------------
    גיא גלנצר
    יועץ ומדריך SQL Server
    Madeira - SQL Server Services
    http://www.madeira.co.il

    • סומן כתשובה על-ידי pituachMVP, Editor יום שלישי 05 פברואר 2013 13:15
    יום רביעי 30 ינואר 2013 07:43
    מנחה דיון
  • תודה רבה לכולם!! מעריך את זה.
    יום שישי 01 פברואר 2013 22:59
  • ערב טוב אלון

    אנא סגור את השירשור אם קיבלת תשובה על ידי סימון תשובה אחת או יותר.

    אם עדיין לא קיבלת את התשובה או כיוון לתשובה אנא נסה לתאר את הבעיה שוב.

    אם אתה יכול לצרף DDL+DML זה יעזור לנו להבין מה בדיוק אתה מחפש לקבל


    signature

    שבת 02 פברואר 2013 18:24
    מנחה דיון