Q: How do i do a case insensitive mysql contains string I am doing a query that needs to search if the work software is in the string...the only problem is that it maybe upper or lower case so i was thinking of doing this
and (cd.name LIKE '%software%' or cd.name LIKE '%Software%' )

but i feel like there is another way if anyone knows

A: MySQL is case insensitive.
These will give the same results, so you can use either:
cd.name LIKE '%software%' 
cd.name LIKE '%Software%'
That's what the 'ci' is for in the different collations (latin1_general_ci, latin1_swedish_ci)

A: You can always try 
LOWER(cd.name) LIKE '%software%'

