I need some help with a DATE_ADD problem. I can't seem to run a query with DATE_ADD(date, INTERVAL expr type) where expr and type are dynamic. It works fine with date as dynamic. I am attempting to add 1 year to 2004-04-15 for a DueDate of 2005-04-15 and add 3 months to 2004-03-10 for a DueDate of 2004-06-10.
Field Names: PlantName, Unit, TagName, CalDate, nPeriod Sample Data from Records: Valmont, 5, FCV96008, 2004-04-15, 1 Year Valmont, 5, FT0701, 2004-03-10, 3 Month This Works: (but it adds 1 year to both records) $qry = "SELECT PlantName, Unit, TagName, CalDate, nPeriod, DATE_ADD(CalDate, INTERVAL 1 Year) AS DueDate FROM tblTemp"; Note: "1 Year" is static. This Works: (but it adds 3 months to both records) $qry = "SELECT PlantName, Unit, TagName, CalDate, nPeriod, DATE_ADD(CalDate, INTERVAL 3 Month) AS DueDate FROM tblTemp"; Note: "3 Month" is static. This Fails: $qry = "SELECT PlantName, Unit, TagName, CalDate, nPeriod, DATE_ADD(CalDate, INTERVAL nPeriod) AS DueDate FROM tblTemp"; Note: nPeriod is dynamic and contains '1 Year' with FCV96008 and '3 Month' with FT0701 Warning message: Warning: mysql_num_fields(): supplied argument is not a valid MySQL result resource I have also split nPeriod in Pexpr and Ptype using the MID() function and placed them appropriately but that also fails. I have changed the data to all caps (YEAR and MONTH) but it also fails. General server information: July 15, 2004 Operating system: Linux Kernel version: 2.4.26 Apache version: 1.3.31 (Unix) PERL version: 5.8.0 Path to PERL: /usr/bin/perl Path to sendmail: /usr/sbin/sendmail PHP version: 4.3.7 MySQL version: 4.0.18-standard I would appreciate any help. Thank you, Gerard Gilliland [EMAIL PROTECTED] // Table definition: $tblName = "tblTemp"; $tblDef = "PlantName VARCHAR(50), "; $tblDef .= "Unit VARCHAR(10), "; $tblDef .= "TagName VARCHAR(255), "; $tblDef .= "CalDate DATE, "; $tblDef .= "nPeriod VARCHAR(50) "; if(!mysql_query("CREATE TABLE $tblName ($tblDef)")) die ('Cannot Create Table $tblName ' . mysql_error()); // Table Data: if(!mysql_query("INSERT INTO $tblName VALUES( 'Valmont', '5', 'FCV96008', '2004-04-15', '1 Year')")) die ('Cannot Insert into $tblName ' . mysql_error()); if(!mysql_query("INSERT INTO $tblName VALUES( 'Valmont', '5', 'FT0701', '2004-03-10', '3 Month')")) die ('Cannot Insert into $tblName ' . mysql_error());