Omdat je een spatie hebt tussen john
en craig
. Dat zou werken
select id from person
where replace(concat(fname, lname),' ','') LIKE = '%johncraigsmith%'
maar dat is verschrikkelijk qua prestaties btw. Beter zou zijn
select id from person
where lname = 'smith'
and fname = 'john craig'