如何在Firebird中連接where
子句的變量字符串?連接WHERE子句的變量字符串
我有兩個變量類型SMALLINT
。這些變量在while循環中迭代一次後遞增。
從這些變量創建DATE
爲where
- >在SQL中,像這樣的選擇之間(這是我的無效嘗試):
yearmin=extract (year from DATAMIN);
yearmax=extract (year from DATAMAX);
monthmin=extract (month from DATAMIN);
monthmax=extract (month from DATAMAX);
aktyear=rokmin;
actmonth=monthmin;
while (actyear<=yearmax and actmonth<=monthmax) DO
BEGIN
SELECT
[...]
WHERE (g.GDATAP BETWEEN (:actyear || :actmonth || 01) AND (:actyear || :actmonth || 30))
[...]
INTO :Zaw,:Sum;
actyear=actyear+1;
actmonth=actmonth+1;
SUSPEND;
end
這是什麼':actyear'語法?我一直在使用SQL Server一段時間,我從來沒有遇到過它......另外,SUSPEND似乎不是SQL Server關鍵字。你確定你正在爲你的DMBS使用正確的SQL語法(或者你的問題被正確標記)? – Heinzi
您必須構建一個可以轉換爲日期的字符串文字。 – jarlh
actyear是臨時變量,更改每一個迭代,用於創建sql where子句。 – Toster