Bipil Raut
Bipil Raut

Reputation: 262

what is wrong following mysql query?

INSERT INTO lm_empleavetypemodelmap(leavetypeid,userid)
VALUES(1682,"b0c6c81f-a20a-4daa-9038-831478d8e11b")
WHERE lm_empleavetypemodelmap.userid NOT IN
  (SELECT lm_empleavetypemodelmap.userid
   FROM lm_empleavetypemodelmap
   WHERE lm_empleavetypemodelmap.leavetypeid = 1683)

[Err] 1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE lm_empleavetypemodelmap.userid NOT IN( select lm_empleavetypemodelmap.user' at line 1

Upvotes: 1

Views: 52

Answers (1)

Gordon Linoff
Gordon Linoff

Reputation: 1271151

You do not use where with values. Perhaps the stuff at the end is just accidental garbage and you just want:

INSERT INTO lm_empleavetypemodelmap(leavetypeid, userid)
    SELECT 1682, 'b0c6c81f-a20a-4daa-9038-831478d8e11b';

Or, in what looks rather strange to me:

INSERT INTO lm_empleavetypemodelmap(leavetypeid, userid)
    SELECT 1682, 'b0c6c81f-a20a-4daa-9038-831478d8e11b'
    WHERE NOT EXISTS (SELECT 1 FROM lm_empleavetypemodelmap WHERE leavetypeid = 1683)

That is, insert 1682, if 1683 doesn't exist. Usually you care about the value being inserted, not the next value.

Upvotes: 1

Related Questions