tags:

views:

16

answers:

1
UPDATE RIA.Contact SET title = REPLACE(title, 'Cheif', 'Chief') where title rlike 'Cheif';
UPDATE RIA.Contact SET title = REPLACE(title, 'Manger', 'Manager') where title rlike 'Manger';
UPDATE RIA.Contact SET title = REPLACE(title, 'Manging', 'Managing') where title rlike 'Manging';
UPDATE RIA.Contact SET title = REPLACE(title, 'Excutive', 'Executive') where title rlike 'Excutive';

Can we merge the above 4 to something like this : UPDATE table SET A = IF(A > 0 AND A < 1, 1, IF(A > 1 AND A < 2, 2, A)) WHERE A IS NOT NULL;

I know we can do this using a procedure but is it possible just using a query?

I tried this -

UPDATE RIA.Contact SET title = IF(title rlike 'Cheif', replace(title,'Cheif','Chief'), IF(title rlike 'Manger', replace(title,'Manger','Manager'))) WHERE title rlike 'Cheif' or title rlike 'Manger';

no go!

+2  A: 
UPDATE RIA.Contact
SET title = REPLACE(
  REPLACE(
    REPLACE(
      REPLACE(title, 'Excutive', 'Executive'),
      'Manging', 'Managing'),
    'Manger', 'Manager'),
  'Cheif', 'Chief')
WHERE title rlike 'Cheif'
   OR title rlike 'Manger'
   OR title rlike 'Manging'
   OR title rlike 'Excutive';
Adrian Smith
This totally works! Can we use If Then Else for making the query lot simpler?
ThinkCode
I don't think you can use If-Then-Else in this context.
Adrian Smith
Thanks Adrian! I just wish MySQL had some more features but I am happy with it!
ThinkCode