2010-04-27 63 views
0

我有這樣的數據庫表:MySQL的:由主機名稱包含的網址字段搜索

id | url 
----------------------------------------- 
1 | http://stackoverflow.com/ 
2 | http://www.google.com 
3 | http://example.com/somepage 
4 | https://another.net?id=88 
5 | http://hello.org/index.php?hello=2 
6 | http://google.com?q=hello+world 

我需要搜索所有領域,其中URL屬於某個主機。

例如,如果我提供查詢'google.com',它將返回第2和第6行(www被忽略)。 我得到使用PHP parse_url()函數的主機。

SQL查詢的外觀如何?

回答

3

SELECT * FROM table_name的WHERE LIKE「%HOST_NAME%」網址

與您的表的名稱替換表名和 與你正在尋找被包含在URL中的主機名替換HOST_NAME。

+0

example.com/somepage?url=google.com&another_url=example.net – 2010-04-27 09:30:50

+0

從URL中提取查詢參數並將它們替換爲上面顯示給您的sql; – 2010-04-27 09:33:01

+0

謝謝:)我只是說,如果數據庫中的網址如下所示:「example.com/somepage?url=google.com&another_url=example.net」,我會搜索「google.com」,結果將不正確。 – 2010-04-27 09:34:52