0
我在Firebird中有这个过程。此存储过程显示的日期,我们给作为参数两个日期之间的名单:在postgresql函数的两个日期之间获得结果
CREATE PROCEDURE DIAS_ENTRE_FECHAS (
first$date DATE,
last$date DATE)
RETURNS (
day$number INTEGEr,
day$name CHAR(10),
day$date DATE)
AS
DECLARE VARIABLE day$week INTEGER;
begin
/* Procedure Text */
day$date= FIRST$DATE;
day$number = 0;
while (day$date <= LAST$DATE) DO
begin
day$week=extract(weekday from day$date);
IF (day$week=0) THEN
day$name='DOMINGO';
ELSE IF (day$week=1) THEN
day$name='LUNES';
ELSE IF (day$week=2) THEN
day$name='MARTES';
ELSE IF (day$week=3) THEN
day$name='MIERCOLES';
ELSE IF (day$week=4) THEN
day$name='JUEVES';
ELSE IF (day$week=5) THEN
day$name='VIERNES';
ELSE IF (day$week=6) THEN
day$name='SABADO';
day$number = day$number+1;
suspend;
day$date = day$date+1;
end
末
我想翻译的火鸟过程中PostgreSQL的工作。
我的例子。我需要做的是:
SELECT * FROM Dias_Entre_Fechas(start_date, end_date)
返回数据:
DAY$NUMBER DAY$NAME DAY$DATE
--------------------------------------
1 MARTES 12/01/2010
2 MIERCOLES 13/01/2010
3 JUEVES 14/01/2010
4 VIERNES 15/01/2010
谢谢! ^^
我需要因为功能我想给我自己的参数。 –
例如: SELECT * FROM Dias_Entre_Fechas(日期,结束日期) 返回数据: DAY $ NUMBER天$ NAME DAY $ DATE -------------------- ------------------ 1 MARTES 12/01/2010 2 MIERCOLES 13/01/2010 3 JUEVES 14/01/2010 4 VIERNES 15/01/2010 –