2013-11-01 42 views
0

你好傢伙我試圖做一個fql查詢,通過姓名的第一個字母搜索朋友,我做了這個查詢,但沒有告訴我正確的結果。Facebook的fql按姓名的第一個字母搜索

在這種情況下,我試圖讓所有我的朋友的第一個字母「g」,但CONTAINS doens't做我在找什麼。還有另一種方式?

SELECT uid , first_name, last_name FROM user WHERE uid IN 
(SELECT uid2 FROM friend WHERE uid1 = me()) AND (CONTAINS('g') 
AND strpos(lower(name),lower('g')) >=0) ORDER BY first_name ASC 

回答

1

問題是與您的strpos()使用。您的查詢將檢索您的名字中帶有字母'g'的所有朋友。而且,我認爲在這裏使用contains()沒有意義。

這個查詢將正常工作爲你的任務:

SELECT uid , first_name, last_name FROM user WHERE uid IN 
(SELECT uid2 FROM friend WHERE uid1 = me()) AND 
strpos(lower(first_name),lower('g')) = 0 ORDER BY first_name ASC 

正如你所看到的,我使用strpos(lower(first_name),lower('g')) = 0。這將只檢索那些名字中帶有'g'作爲第一個字母的朋友。

+0

完全謝謝! – fabrizio