Unix Technical Forum

SEO

vBulletin Search Engine Optimization


Go Back   Unix Technical Forum > Database Server Software > MySQL

Register FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 05-05-2008, 05:51 AM
matt
 
Posts: n/a
Default Is there a way to do this?

I am trying to write a video search engine for my website which has a
database of videos that stores the following information (among other
things): "Title", "Keywords", and "Description".

The goal of this search engine is to have a user type in a query and
then have it return results where any of those fields match using the
'LIKE' command. However, I want all of the videos with titles matching
to be shown before those with keywords matching, and then the ones
with description matching.

Obviously this can be done with 3 commands but based on my current
configuration it would be REALLY nice if I could do it with one result
set. For example, pagination. If I want to limit results to 10 per
page it is difficult to use the LIMIT command over 3 different sql
statements.

I was thinking something with GROUP maybe?? But I feel like that can
only be done over fields. Any thoughts??
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 05-05-2008, 05:51 AM
Luuk
 
Posts: n/a
Default Re: Is there a way to do this?

matt schreef:
> I am trying to write a video search engine for my website which has a
> database of videos that stores the following information (among other
> things): "Title", "Keywords", and "Description".
>
> The goal of this search engine is to have a user type in a query and
> then have it return results where any of those fields match using the
> 'LIKE' command. However, I want all of the videos with titles matching
> to be shown before those with keywords matching, and then the ones
> with description matching.
>
> Obviously this can be done with 3 commands but based on my current
> configuration it would be REALLY nice if I could do it with one result
> set. For example, pagination. If I want to limit results to 10 per
> page it is difficult to use the LIMIT command over 3 different sql
> statements.
>
> I was thinking something with GROUP maybe?? But I feel like that can
> only be done over fields. Any thoughts??


select * from titlesearch LIMIT 10
union
select * from keywordsearch LIMIT 10
union
select * from descriptionsearch LIMIT 10

for ordering this resultset propperly you might even want to do this:

select 'A', * from titlesearch LIMIT 10
union
select 'B', * from keywordsearch LIMIT 10
union
select 'C', * from descriptionsearch LIMIT 10


--
Luuk
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #3 (permalink)  
Old 05-05-2008, 05:51 AM
Paul Lautman
 
Posts: n/a
Default Re: Is there a way to do this?

matt wrote:
>I am trying to write a video search engine for my website which has a
> database of videos that stores the following information (among other
> things): "Title", "Keywords", and "Description".
>
> The goal of this search engine is to have a user type in a query and
> then have it return results where any of those fields match using the
> 'LIKE' command. However, I want all of the videos with titles matching
> to be shown before those with keywords matching, and then the ones
> with description matching.
>
> Obviously this can be done with 3 commands but based on my current
> configuration it would be REALLY nice if I could do it with one result
> set. For example, pagination. If I want to limit results to 10 per
> page it is difficult to use the LIMIT command over 3 different sql
> statements.
>
> I was thinking something with GROUP maybe?? But I feel like that can
> only be done over fields. Any thoughts??


I think you're actually looking for FULLTEXT searching.


Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT. The time now is 05:41 AM.


Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145