Php select语句中出现数据库间错误

Php select语句中出现数据库间错误,php,syntax-error,interbase,Php,Syntax Error,Interbase,亲爱的所有人,我的php出现错误: PHP Warning: ibase_query(): Dynamic SQL Error expression evaluation not supported Strings cannot be added or subtracted in dialect 3 in /home/jeinqa/www/oqc/getsch.php on line 22 来自我的剧本: define("DBNAME","10.230.38.111:/var/lib/fi

亲爱的所有人,我的php出现错误:

PHP Warning:  ibase_query(): Dynamic SQL Error expression evaluation not supported Strings cannot be added or subtracted in dialect 3  in /home/jeinqa/www/oqc/getsch.php on line 22
来自我的剧本:

define("DBNAME","10.230.38.111:/var/lib/firebird/data/OCS_FA.fdb");
define("DBUSER","USER"); // user name
define("DBPASS","USER"); // password
$dbh = ibase_connect(DBNAME,DBUSER,DBPASS) or die(_ERROR15.": ".ibase_errmsg());

    $stmt = "SELECT FIRST 10 LINE_NAME, MODEL_ONLY || ' ' || VER_ONLY as MODEL, PROD_NO,
                     (RIGHT(SERIAL_NO_UP,-4)-RIGHT(SERIAL_NO_LOW,-4))+1 as QTY, START_SERIAL, 
                        SERIAL_NO_LOW, SERIAL_NO_UP, PROD_DATE 
                FROM DOC_TO";
    $sth = ibase_query($dbh, $stmt);

这是我第一次使用interbase。

您试图减去2个字符串(
右(序列号不向上,-4)
右(序列号不向上,-4)

相反,
CAST
将这些值转换为整数,然后再尝试对它们进行数学运算:

(CAST(RIGHT(SERIAL_NO_UP,-4) AS INTEGER)-CAST(RIGHT(SERIAL_NO_LOW,-4)
AS INTEGER))+1 as QTY