hondaman Posted February 27, 2006 Share Posted February 27, 2006 Hi guys, nice forum. I have been playing on and off with php for awhile now but have never encountered the problem I have now and I would like to see if anyone can help me.I am currently getting a used vehicle feed sent to me by a provider which updates my database daily. Problem is, it is not indexed nor do the tables have what i consider "real relationships". Anywho...The problem I have is that in one table... vehicles, currently gives me the options for each vehicle using THEIR coding system which oddly enough uses upper and lower case letters as the unique id for the options table.ie. (Options Table)ID DESC----- ------------------TA Power WindowsTa Power Door LocksRA Keyless EntryRa etc.....My question is, how can I tell my query to only select the value that matches the correct case??? I am using the query below to no avail.$thisOptionID = "Ta";$fq = "SELECT DISTINCT id, desc FROM options WHERE id = '$thisOptionID'";$fr = mysql_query($fq) or die("Error in Option Select Query: ".mysql_error());$fi = mysql_fetch_array($fr);What it gives me back is Power Windows when I want it to give me Power Door Locks.Please help. Quote Link to comment https://forums.phpfreaks.com/topic/3678-searching-by-case-in-select-query/ Share on other sites More sharing options...
wickning1 Posted February 27, 2006 Share Posted February 27, 2006 Try this:[code]SELECT DISTINCT id, desc FROM options WHERE id = '$thisOptionID' COLLATE latin1_general_cs[/code]This will break the indexing, but if it works for you, you can set the `id` column to the latin1_general_cs collation permanently with ALTER TABLE. This would allow you to create a case sensitive index, and you could go back to using your original query. Quote Link to comment https://forums.phpfreaks.com/topic/3678-searching-by-case-in-select-query/#findComment-12747 Share on other sites More sharing options...
fenway Posted February 27, 2006 Share Posted February 27, 2006 If you're using MySQL < 4.1, use the BINARY operator to make the case stick:[code]SELECT DISTINCT id, desc FROM options WHERE id = BINARY '$thisOptionID'[/code]But as wickning1 indicated, if this is how you want all your queries to work, you'll have to ALTER the table to set the column to this mode. Quote Link to comment https://forums.phpfreaks.com/topic/3678-searching-by-case-in-select-query/#findComment-12814 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.