|
VFP 愛用者社區 本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
|
上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
jslin
註冊時間: 2008-02-25 文章: 7
第 1 樓
|
發表於: 星期二 三月 26, 2013 9:39 am 文章主題: SQL - 出現最靠近 20121231日期資料 |
|
|
結果希望是只顯示每一個品號在20130101000之前所產生的最後一筆資料(也就是小於20130101日期資料)
類如:品號 201002-02-12-055401 品名 兵果_承架
出現有二筆(分別是20121120001跟20120316013), 但是希望結果是出現最靠近 20121231日期資料, 也就是單號為 20121120001資料
以下是我以 MAX(LA007) AS 單號 來顯示, 但是還是出現品號所有資料?
代碼: | SELECT LA001 AS 品號, MB002 AS 品名, MB003 AS 規格, MB064 AS 庫存數量, MB065 AS 庫存金額,
LA006 AS 單別, MAX(LA007) AS 單號, LA012 單位成本, LA011 AS 異動數量, LA013 AS 金額
FROM SKTEST..INVLA S1 INNER JOIN SKTEST..INVMB S2
ON S1.LA001 = S2.MB001
WHERE LA001 LIKE '2%' AND LA006 LIKE '34%'
AND LA007 < '2013010100'
GROUP BY LA001, LA006, LA007, LA012, LA011, LA013,
MB002, MB003, MB064, MB065
ORDER BY LA001, LA007 DESC
以下是我目前語法後結果
品號 品名 規格 庫存數量 庫存金額 單別 單號 單位成本 異動數量 金額
201002-02-12-055401 兵果_承�[ ABS 原色 0 0 3400 20121120001 2.857300 2200.000 6286.000000
201002-02-12-055401 兵果_承�[ ABS 原色 0 0 3400 20120316013 2.857600 330.000 943.000000
201002-03-12-055401 兵果_底座 ABS 原色 0 0 3400 20121120001 3.428600 2200.000 7543.000000
201002-03-12-055401 兵果_底座 ABS 原色 0 0 3400 20120316013 3.427300 330.000 1131.000000
201002-04-14-044411 兵果_配重塊 AS 顏色不拘 97 364 3400 20121125001 3.752600 1524.000 5719.000000
201002-04-14-044411 兵果_配重塊 AS 顏色不拘 97 364 3400 20121124002 3.752100 476.000 1786.000000
201002-04-14-044411 兵果_配重塊 AS 顏色不拘 97 364 3400 20120327003 3.753300 300.000 1126.000000
以下是希望顯示結果(出�{最靠近 20121231日期資料)
品號 品名 規格 庫存數量 庫存金額 單別 單號 單位成本 異動數量 金額
201002-02-12-055401 兵果_承�[ ABS 原色 0 0 3400 20121120001 2.857300 2200.000 6286.000000
201002-03-12-055401 兵果_底座 ABS 原色 0 0 3400 20121120001 3.428600 2200.000 7543.000000
201002-04-14-044411 兵果_配重塊 AS 顏色不拘 97 364 3400 20121125001 3.752600 1524.000 5719.000000 |
|
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4225 來自: Taipei,Taiwan
第 2 樓
|
發表於: 星期二 三月 26, 2013 10:39 am 文章主題: |
|
|
把日期換算成數字,
差額取絕對值.
XD _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
jslin
註冊時間: 2008-02-25 文章: 7
第 3 樓
|
發表於: 星期二 三月 26, 2013 10:57 am 文章主題: |
|
|
syntech 寫到: | 把日期換算成數字,
差額取絕對值.
XD |
不好意思 MAX(LA007) 已經是數字
能否更明確指點迷津 非常謝謝 ~~~ |
|
回頂端 |
|
|
syntech
註冊時間: 2003-05-16 文章: 4225 來自: Taipei,Taiwan
第 4 樓
|
發表於: 星期二 三月 26, 2013 4:30 pm 文章主題: |
|
|
代碼: |
SELECT LA001 AS 品號, MB002 AS 品名, MB003 AS 規格, MB064 AS 庫存數量, MB065 AS 庫存金額,
LA006 AS 單別, MAX(LA007) AS 單號, LA012 單位成本, LA011 AS 異動數量, LA013 AS 金額
FROM SKTEST..INVLA S1 INNER JOIN SKTEST..INVMB S2
ON S1.LA001 = S2.MB001
WHERE LA001 LIKE '2%' AND LA006 LIKE '34%'
AND LA007 in ( SELECT TOP 1 LA007 FROM SKTEST..INVLA WHERE LA007 <'2013010100' ORDER BY LA007 DESC )
GROUP BY LA001, LA006, LA007, LA012, LA011, LA013,
MB002, MB003, MB064, MB065
ORDER BY LA001, LA007 DESC
|
應該很"接近"這樣. XD
不過....... _________________ 如果公司有下列困擾:
1. 找不到便宜,快速,簡易的 生產排程軟體
2. 不知道如何快速排定 採購計劃
3. 成本抓不準,自己算比軟體算有用
4. 想學習系統規劃,想找系統架構的顧問
請聯絡我們,也許我們幫得上忙 |
|
回頂端 |
|
|
yctsai
註冊時間: 2003-04-11 文章: 179
第 5 樓
|
發表於: 星期五 三月 29, 2013 9:22 am 文章主題: |
|
|
初想 結果再group一次 或者 distinct |
|
回頂端 |
|
|
saint
註冊時間: 2003-07-14 文章: 211
第 6 樓
|
發表於: 星期五 四月 12, 2013 2:44 pm 文章主題: |
|
|
試試看
代碼: |
SELECT * FROM (
SELECT
LA001 AS 品號
, MB002 AS 品名
, MB003 AS 規格
, MB064 AS 庫存數量
, MB065 AS 庫存金額
, LA006 AS 單別
, LA007 AS 單號
, LA012 單位成本, LA011 AS 異動數量, LA013 AS 金額
, ROW_NUMBER() OVER(PARTITION BY LA001 , LA006 , LA007 , LA012 , LA011 , LA013
, MB002 , MB003 , MB064 , MB065
ORDER BY LA001, LA007 DESC) AS SEQ
FROM SKTEST..INVLA S1 INNER JOIN SKTEST..INVMB S2 ON S1.LA001 = S2.MB001
WHERE LA001 LIKE '2%' AND LA006 LIKE '34%'
AND LA007 < '2013010100'
) WHERE SEQ = 1 |
|
|
回頂端 |
|
|
|
|
您 無法 在這個版面發表文章 您 無法 在這個版面回覆文章 您 無法 在這個版面編輯文章 您 無法 在這個版面刪除文章 您 無法 在這個版面進行投票 您 無法 在這個版面附加檔案 您 無法 在這個版面下載檔案
|
|