Josh,

You cannot do this in mysql, as there is no such construct.

Perhaps you've been misled by the title of section 13.2, "Control Flow Functions" <http://dev.mysql.com/doc/mysql/en/Control_flow_functions.html>. Despite the name, mysql has no control flow functions. What it has are functions whose return values are conditional.

There are some cases where

   IF (something) THEN (do something)

can be rewritten into valid SQL, but in general the solution is to do this in your application code.

Michael

Josh Howe wrote:

Sorry, I don't think I was very clear. I'm asking a more generic
question about control flow expressions. I want to run a sql statement
but only if a certain condition is met, namely if a particular record
exists in a table. I want to do it all in a single mysql statement, like
so:

If ([record exists]) then
        Do some sql
End If

How can I do this? Thanks.


-----Original Message-----
From: Leo [mailto:[EMAIL PROTECTED] Sent: Tuesday, October 19, 2004 11:38 PM
To: Josh Howe
Cc: [EMAIL PROTECTED]
Subject: Re: what is wrong woth this statement?


i didnt fully catch you...
is this the kind of query statement you want?

INSERT INTO some_other_table
SELECT
some_field_list
FROM z_mail_systems
HAVING COUNT(any_field)>0


On Tue, 19 Oct 2004 12:45:30 -0400, Josh Howe <[EMAIL PROTECTED]> wrote:

if (select count(*) from z_mail_systems > 0) then [insert statement]
endif;

How do I do this kind of conditional insert? Thanks.





-- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]



Reply via email to