我需要创建sqlite语句来检查特定列的值是否不为null,然后添加新列并插入新值。
我已经有了这个:
CREATE TABLE "StuPayment" (
"PayNumber" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,
"StudentName" ntext,
"CourseName" ntext,
"PayDate" datetime,
"CheckNumber" NUMERIC,
"Amount" NUMERIC
)
我要创建的是一个新的付款列(PayDate1,CheckNumber1,Amount1)
,当学生以两笔付款或有时三笔支付课程费用时。
谢谢您阅读本文。
答案 0 :(得分:1)
不。不要这样只需将付款记录为多行即可。您已经有一个datetime
列,因此每笔付款都单独记录。
新行有多个优点:
amount > 1000
之类的内容,而不必担心多余的列。PayNumber
唯一标识每笔付款。您对每年10,000行的关注与当今世界无关。数据库和计算机功能强大。
如果要查看学生已支付的所有款项,可以使用:
select studentname, coursename, count(*) as numpayments, sum(amount)
from stupayment
group by studentname, coursename;
答案 1 :(得分:0)
我建议创建一个视图并执行所需的任何操作,因为我看到逻辑需求不清楚。进入视图创建
Create view as (Select * from table) ;
Alter view add column c1 ;