Thread: Query Formulation Question
consider the following simplified queries (php using heredoc): $sql_1 = <<<_EOSQL select count(inspect) from t_inspect, t_product, t_test_area where t_product.product_num = 1 and t_test_area.id = 5 _EOSQL $sql_2 = <<<_EOSQL select count(inspect) from t_inspect, t_product, t_test_area where t_product.product_num = 1 _EOSQL what is the best way to handle both of these cases in one statement? i know it would take the form of $sql_1, but what value should i feed to t_test_area.id? is there syntax that will just ignore it or do i need to send a value of 'NOT NULL'? will NOT NULL slow down the query when compared to $sql_2? am i missing a better way to structure these queries? as always, tia... __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
operationsengineer1@yahoo.com wrote: > consider the following simplified queries (php using > heredoc): > > $sql_1 = <<<_EOSQL > > select count(inspect) > from t_inspect, t_product, t_test_area > where t_product.product_num = 1 > and t_test_area.id = 5 > > _EOSQL > > $sql_2 = <<<_EOSQL > > select count(inspect) > from t_inspect, t_product, t_test_area > where t_product.product_num = 1 > > _EOSQL > > what is the best way to handle both of these cases in > one statement? You are using a programming language--why not construct the query on the fly? Why the requirement to use the heredoc for the entire query string? Sean
> operationsengineer1@yahoo.com wrote: > > consider the following simplified queries (php > using > > heredoc): > > > > $sql_1 = <<<_EOSQL > > > > select count(inspect) > > from t_inspect, t_product, t_test_area > > where t_product.product_num = 1 > > and t_test_area.id = 5 > > > > _EOSQL > > > > $sql_2 = <<<_EOSQL > > > > select count(inspect) > > from t_inspect, t_product, t_test_area > > where t_product.product_num = 1 > > > > _EOSQL > > > > what is the best way to handle both of these cases > in > > one statement? > > You are using a programming language--why not > construct the query on the > fly? the simple answer is i don't know how. btw, that's the complex answer, too. ;-) can you share a quick example? > Why the requirement to use the heredoc for the > entire query string? that's not a requirement. i like the heredoc format for readability and ease of c&p to pgadmin3's query executer. however, i'm not married to it and will use another option when i have a good reason. based on your comments, i could use a heredoc for the base query and then check to see if i need to concatenate the where statement to it. i think that will work. __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
operationsengineer1@yahoo.com wrote: >>operationsengineer1@yahoo.com wrote: >> >>>consider the following simplified queries (php >> >>using >> >>>heredoc): >>> >>>$sql_1 = <<<_EOSQL >>> >>>select count(inspect) >>>from t_inspect, t_product, t_test_area >>>where t_product.product_num = 1 >>>and t_test_area.id = 5 >>> >>>_EOSQL >>> >>>$sql_2 = <<<_EOSQL >>> >>>select count(inspect) >>>from t_inspect, t_product, t_test_area >>>where t_product.product_num = 1 >>> >>>_EOSQL >>> >>>what is the best way to handle both of these cases >> >>in >> >>>one statement? >> >>You are using a programming language--why not >>construct the query on the >>fly? > > > the simple answer is i don't know how. btw, that's > the complex answer, too. ;-) can you share a quick > example? > > >>Why the requirement to use the heredoc for the >>entire query string? > > > that's not a requirement. i like the heredoc format > for readability and ease of c&p to pgadmin3's query > executer. however, i'm not married to it and will use > another option when i have a good reason. > > based on your comments, i could use a heredoc for the > base query and then check to see if i need to > concatenate the where statement to it. i think that > will work. That sounds reasonable. You might look at a database abstraction layer. I'm not sure what is available for php, though. Sean