是否可以按 daily/weekly/monthly 的间隔插入约会日期
Is it possible to Insert appointment date by interval of daily/weekly/monthly
按 daily/weekly/monthly
的间隔插入约会日期
我是 Apex 的新手,我想以 daily/weekly/monthly 次预约的间隔插入后续医生访问。
我该如何编写这个查询?环形?还是做一个 pl/sql procedure/function 更好?
能举个例子吗?
我想做什么:
- Select 开始日期
- select 预约次数
- Select区间
- Insert/generate 约会自动在 table
示例:
- 开始日期:26-05-2015(假设 26 是星期一)
- 预约人数:3
- 间隔 : if daily( 接下来3天(27/28 /29) ; if weekly(接下来 3 周的每个星期一预约),if monthly(接下来 3 个月的每 26 号预约)月)
- 在 apex 应用程序表单中按 confirm/save/insert 并插入数据库 table。
How should I write this query?
您可以使用分层查询:
INSERT INTO table_name ( appointment_date )
SELECT CASE :interval_type
WHEN 'daily'
THEN :start_date + INTERVAL '1' DAY * LEVEL
WHEN 'weekly'
THEN :start_date + INTERVAL '7' DAY * LEVEL
WHEN 'monthly'
THEN ADD_MONTHS( :start_date, LEVEL )
END
FROM DUAL
CONNECT BY
LEVEL <= :number_of_appointments
sqlfiddle here
按 daily/weekly/monthly
的间隔插入约会日期我是 Apex 的新手,我想以 daily/weekly/monthly 次预约的间隔插入后续医生访问。
我该如何编写这个查询?环形?还是做一个 pl/sql procedure/function 更好? 能举个例子吗?
我想做什么:
- Select 开始日期
- select 预约次数
- Select区间
- Insert/generate 约会自动在 table
示例:
- 开始日期:26-05-2015(假设 26 是星期一)
- 预约人数:3
- 间隔 : if daily( 接下来3天(27/28 /29) ; if weekly(接下来 3 周的每个星期一预约),if monthly(接下来 3 个月的每 26 号预约)月)
- 在 apex 应用程序表单中按 confirm/save/insert 并插入数据库 table。
How should I write this query?
您可以使用分层查询:
INSERT INTO table_name ( appointment_date )
SELECT CASE :interval_type
WHEN 'daily'
THEN :start_date + INTERVAL '1' DAY * LEVEL
WHEN 'weekly'
THEN :start_date + INTERVAL '7' DAY * LEVEL
WHEN 'monthly'
THEN ADD_MONTHS( :start_date, LEVEL )
END
FROM DUAL
CONNECT BY
LEVEL <= :number_of_appointments
sqlfiddle here