-1
我的數據是從PostGreSQL的表中獲取的。它由1024行和2列這是POSTGRESQL公式幫助想要
wv1 rv1
341.6 2.48
343.6 2.58
344.7 2.37
346.3 2.32
347.9 2.29
349.5 2.36
351.1 2.23
352.6 2.24
354.2 2.25
355.8 2.29
357.4 2.28
358.9 2.23
我選擇其中使用
SELECT wv1 FROM grassland1 WHERE wv1 BETWEEN 341 AND 359
從PostgreSQL的341和359之間WV1我申請在此公式中所選擇的數據
數據樣本表The formula is **CRi=rv1i/(rv1START+K.(wv1i-wv1START))**
**K=(rv1END-rv1START)/(wv1END-wv1START)**
That is
rv1i - The current rv1 value
wv1i - Tha current wv1 value
rv1START - First value of rv1
rvlEND - last value of rv1
wv1START - First value of wv1
wvlEND - last value of wv1
步驟
個步驟爲分母
- 當前RV1值作爲RVI
的步驟Denaminator RV1起始值的
- Subraction和結束值RV1作爲 rv1END-rv1START(即,2.23-2.48)
- wv1的縮寫起始值和wv1結束值作爲 wv1END-wv1START(即,358.9-341.6)
- Divde(rv1END-rv1START)/(wv1END-wv1START)(即,(2.23-2.48)/(358.9-341.6)) 並命名值爲K
- Subraction wv1i-wv1START的(即,i = 341.6,343.6,344.7,...)和與 K值乘法它作爲K.(wv1i-wv1START)
- 與添加RVL的開始值K.(wv1i-wv1START)作爲 rv1START + K。(wv1i-wv1START)並命名爲RV1
分子/ Denaminator
- CRI = rv1i /(rv1START + K。(wv1i-wv1START))
我的輸出將是這樣
wv1 rv1
341.6 1
343.6 1.049496
344.7 0.973225
346.3 0.961825
347.9 0.958576
349.5 0.955264
351.1 0.951886
352.6 0.965084
354.2 0.979147
355.8 1.006683
357.4 1.012579
358.9 1
這是PostgreSQL查詢對於TIS任務
DECLARE @rvlEND decimal, @rv1START decimal, @wv1END decimal, @wv1START decimal
, @K decimal;
SET @wv1START = (SELECT MIN(wv1) FROM grassland1
WHERE wv1 BETWEEN 341 AND 359);
SET @wv1END = (SELECT MAX(wv1) FROM grassland1
WHERE wv1 BETWEEN 341 AND 359);
SET @rv1START = (SELECT rv1 FROM grassland1
WHERE wv1 = @wv1START);
SET @rvlEND = (SELECT rv1 FROM grassland1
WHERE wv1 = @wv1END);
SET @K = (@rv1END - @rv1START)/(@wv1END - @wv1START);
現在所有變量都已計算出來,以評估每一行的值。
SELECT t.wv1,
t.rv1/(@rv1START + (@K*(t.wv1 - @wv1START))) as CRi
FROM grassland1 t
WHERE wv1 BETWEEN 341-359
我不知道如何查看接收到的查詢輸出,如果不可能我怎麼能在jsp中做到這一點...
@vmvadivel爵士,如何寫這個查詢的過程或函數,那麼如何我將在PostGreSQL中看到輸出 –
@Arnaud ALLAVENA,先生,如何將這個查詢寫爲一個過程或函數,那麼我將如何我看到在PostGreSQL輸出運行 –