none
我是一個spl的新手.有問題想請大家幫幫忙,感恩..如何用SQL 2005 簡易版 設計出1+2+3+......1000 RRS feed

  • 問題

  • 我是一個spl的新手.有問題想請大家幫幫忙,感恩..如何用SQL 2005 簡易版 設計出1+2+3+......1000

    要有兩種模式 1. 1+2+3+4+5+.....1000 慢慢加
                      2.  利用公式 (上底+下底)X高/2  

    請大家幫我動動腦
    告訴我程式碼 或 提示我方法 讓我有個方向 謝謝大家
    2009年8月11日 上午 02:10

解答

  • 您要問的應該是sql語法吧,我猜您應該是把sql誤植為spl,有關您的需求,可以參考T-SQL的WHILE敘述,MSDN上有詳細的語法與範例可供參考,謝謝。


    參考資料:
    http://msdn.microsoft.com/en-us/library/ms178642.aspx
    http://msdn.microsoft.com/en-us/library/ms189826(SQL.90).aspx

    2009年8月11日 上午 02:58
    版主
  • 原來是作業,且問題也不明確,要怎樣的東西? Store Procedure?Function?
    難怪沒人想給明確的答案

    問題1 & 2 不需要用到 Cursor

    問題1是需要用到迴圈,但問題2倒是不需要迴圈
    DECLARE @iStart int;
    DECLARE @iSum int;
    SET @iStart=1;
    SET @iSum=0;
    WHILE (@iStart<=1000)
    BEGIN
    	SET @iSum=@iSum+@iStart;
    	SET @iStart=@iStart+1;
    END
    SELECT @iSum;
    

    ☞ 這裡是「免費的討論區」付費支援服務請造訪 此處享受尊榮服務
    如果回覆對您有幫助,請記得按下標示為解答」
    2009年8月11日 下午 02:16
    版主

所有回覆

  • 您要問的應該是sql語法吧,我猜您應該是把sql誤植為spl,有關您的需求,可以參考T-SQL的WHILE敘述,MSDN上有詳細的語法與範例可供參考,謝謝。


    參考資料:
    http://msdn.microsoft.com/en-us/library/ms178642.aspx
    http://msdn.microsoft.com/en-us/library/ms189826(SQL.90).aspx

    2009年8月11日 上午 02:58
    版主
  • 是sql sorry 沒錯, 對不起一時沒注意

    我是新手...如果有看不懂的地方

    可以請大家指點一下嗎?

    2009年8月11日 上午 09:19
  • 我想出答案了
    但是

    這個問題如果要加入

    資料指標(CURSOR), 行成回圈(LOOP)的概念要怎麼寫呢?



    1.

    declare @n int,@nn int
    set @nn=0
    set @n=1
    while @n<=1000
    begin
    set @nn=@nn+@n
    set @n=@n+1
    end

    select @nn

    2.
    declare @上底 int,@下底 int,@高 int
    set @上底=1
    set @下底=1000
    set @高=1000

    select (@上底+@下底)*@高/2


    如果我用3個資料行 start,stop,anser

    我 插入 start,stop 兩個數字

    那麼

    anser 自動跳答案

    請問該怎麼寫 = =lll

    跪求答案...我的作業..

    這個問題如果要加入

    資料指標(CURSOR), 行成回圈(LOOP)的概念要怎麼寫呢?

    2009年8月11日 上午 10:19
  • 原來是作業,且問題也不明確,要怎樣的東西? Store Procedure?Function?
    難怪沒人想給明確的答案

    問題1 & 2 不需要用到 Cursor

    問題1是需要用到迴圈,但問題2倒是不需要迴圈
    DECLARE @iStart int;
    DECLARE @iSum int;
    SET @iStart=1;
    SET @iSum=0;
    WHILE (@iStart<=1000)
    BEGIN
    	SET @iSum=@iSum+@iStart;
    	SET @iStart=@iStart+1;
    END
    SELECT @iSum;
    

    ☞ 這裡是「免費的討論區」付費支援服務請造訪 此處享受尊榮服務
    如果回覆對您有幫助,請記得按下標示為解答」
    2009年8月11日 下午 02:16
    版主
  • 抱歉啦
    我真的是新手
    請多多包含..
    努力學習中

    2009年8月13日 上午 02:22
  • 不知您是否看過本區討論區最上方的「SQL Server Management 討論區發言規範」〔公告〕TechNet 技術論壇板規 v1.0 呢?
    若還沒,建議您花點時間閱讀一下。
    ☞ 這裡是「免費的討論區」付費支援服務請造訪 此處享受尊榮服務
    如果回覆對您有幫助,請記得按下標示為解答」
    2009年8月13日 上午 07:49
    版主