I am using mySQL and my table's columns are as follows:
post_id,meta_id,meta_value,meta_key
Dummy data is attached as:
I want data meeting the condition that latitude must be between 60 and 60.5 and longitude must be between 8 and 9.
I am using following where clause:
SELECT *
FROM domenposts
LEFT JOIN domenpostmeta ON domenposts.id=domenpostmeta.post_id
WHERE ( domenpostmeta.meta_key = 'longitude' AND domenpostmeta.meta_value BETWEEN 8 AND 9 )
OR ( domenpostmeta.meta_key = 'latitude' AND domenpostmeta.meta_value BETWEEN 60 AND 60.5 )
Which is working but according to my logic there must me AND instead of OR between the conditions which results in zero rows. I need help to resolve this issue.
OUTPUT REQUIRED: All post_ids having latitude between 60 and 60.4 AND longitudes between 8 and 9.
Here is my data for table:
postid metaid meta_key meta_value
1109 109 longitude 8.2135
1108 109 latitude 60.4029
1002 239 longitude 9
1080 241 latitude 70
1051 5 latitude 60
1001 239 latitude 62