2016-12-15 17 views
1

私は基本PHPとSQL(PHPmy adminを使用しています)を学んでいて、前の行の値を処理してテーブルの新しい行のデータを計算する方法を理解できません。

以前に入力した行に基づいて行の値を計算するにはどうすればよいですか?例えば、私はそれぞれの行を持つようにしたい:
1.自動コルA ID = 20
2.コルBまでの行を作成 - 自動
3.前の行の日付に1ヵ月追加コルD - 前の行値マイナス支払い(Col C)

PHPまたはSQLを使用しますか?どのように私はそれを設定するのですか?私はまだこれで非常に新しいです穏やかにしてください。 AUTO_INCREMENTを使用しない理由SQLでテーブル内の前の行から値を計算

Table example

+0

? http://dev.mysql.com/doc/refman/5.7/en/example-auto-increment.htmlまたはhttp://stackoverflow.com/questions/5665571/auto-increment-in-phpmyadmin –

+0

サンプルデータを指定する期待される結果も得られます。 – Mansoor

+0

IDの自動インクリメントを使用しています。それは何ヶ月も使用することができますか? – melv

答えて

0
CREATE TABLE #Details(ID INT IDENTITY(1,1),_Date DATE ,Payment  INT, 
LoanAmount INT) 

DECLARE @Date DATE,@Payment INT,@LoanAmount INT,@PreLoanAmount INT 

IF NOT EXISTS(SELECT 1 FROM #Details) 
BEGIN 
    INSERT INTO #Details(_Date ,Payment ,LoanAmount) 
    SELECT @Date,@Payment,@LoanAmount 
END 
ELSE 
BEGIN 
    SELECT TOP 1 @PreLoanAmount = LoanAmount FROM #Details ORDER BY ID DESC 

    INSERT INTO #Details(_Date ,Payment ,LoanAmount) 
    SELECT DATEADD(MONTH,1,@Date),@Payment,@PreLoanAmount - @Payment 

END 
+0

説明を追加できますか? @OPはコードを再利用するだけでなく、何かを学ぶことができます。彼はプログラミングの時に新しいことを述べています。 –

関連する問題