SitePoint Sponsor

User Tag List

Results 1 to 2 of 2
  1. #1
    SitePoint Member
    Join Date
    Jan 2006
    Posts
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Bring back all data, display subset first

    Hello!

    I have an issue pulling back data the way I need it to come back...

    Basically, I need to have all the data come back, but group certain data (based on a variable that is being written in PHP) and display it first.

    So I have tried the following with no luck:

    $select = "(select word,dates from sets where dates<=$time and ( word like '%".$photos."%' )) UNION ALL (select word,dates from sets where dates<=$time and ( word like '%site%' )) ORDER BY dates";

    $select = "SELECT * FROM sets where dates<=$time GROUP BY( word like '%".$photos."%') LIMIT $sta,$show";

    $select = "SELECT * GROUP_CONCAT(DISTINCT test_score ORDER BY test_score DESC SEPARATOR) FROM student GROUP BY '%".$photos."%';"

    The last one is pieces of code I found out there...


    The table structure is very straight forward.

    dates setname keywords etc.....

    So what I need is for *all* the data to come back, but the ones that match a specific search keyword (dynamically written in the sql line with PHP) should come back first.

    So if I have a database of animals and someone searches "Gorilla" all the gorillas should come up first and then all the rest of the animals should be appended to the end of the result.

    Any ideas? thanks again!!!

  2. #2
    SitePoint Guru
    Join Date
    Jan 2004
    Location
    Uppsala, sverige
    Posts
    698
    Mentioned
    2 Post(s)
    Tagged
    1 Thread(s)
    Code:
    select * 
      from sets 
      order by case when keywords like '%$phpVariable%' then 0 else 1 end


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •