我有这个工作:
ExecuteSQL ( "Select email_Full from staffing where Branch = ? and EmployeeID = ? and Title= ?"; " "; " "; "001" ; "33748"; "Supv V" )
但我需要第一个参数在 001-300 的范围内;第二个参数 > 0,第三个参数可以是 Supv、Supv 1、Supv 2、Supv 4 或 Supv 5
我所有的尝试都失败了。
我有这个工作:
ExecuteSQL ( "Select email_Full from staffing where Branch = ? and EmployeeID = ? and Title= ?"; " "; " "; "001" ; "33748"; "Supv V" )
但我需要第一个参数在 001-300 的范围内;第二个参数 > 0,第三个参数可以是 Supv、Supv 1、Supv 2、Supv 4 或 Supv 5
我所有的尝试都失败了。
我建议:
ExecuteSQL ( " Select email_Full from staffing
WHERE Branch = ?
AND EmployeeID = ?
AND Title= ?
AND EmployeeID > 0
AND Branch BETWEEN 1 AND 300
AND Title IN (\"Supv\", \"Supv 1\", \"Supv 2\", \"Supv 4\" or \"Supv 5\")";
""; ""; GetAsNumber("001") ; "33748"; "Supv V" )
我不确定 EmployeeID 检查,我认为您实际上需要 NOT NULL 而不是 >0
我在参数级别将 Branch 转换为数字,否则您将不得不针对带有 IN 或 LIKE 的字符串列表对其进行测试。
我在 ExecuteSQL 方面取得了进展(“从人员配置中选择 email_Full,其中 Branch = ? 和 Employee_ID > ? 和 Title LIKE ?”;“”;“”;“024”;“1”;“Supv%”)
如果我将 FileMaker 字段用于分支,它将返回所有分支的完整电子邮件。我一次需要一个。
尝试这个:
ExecuteSQL ( "SELECT email_Full FROM staffing WHERE Branch < 300 AND EmployeeId > 0 AND Title LIKE '%Supv%'" ; "" ; "" )