Anatoly Lubarsky Logo
programming, design, implementation, integration, games, music, web, mobile

FQL Tricks: How to Count Records

What is FQL ?

FQL is a Facebook platform SQL-style interface which can be queried by 3rd party applications using SQL-like syntax.


Some key features:


  • FQL does not support joins, but supports sub-queries (including IN keyword).
  • Query must be indexable (WHERE clause should include at least one field that is defined as "indexable").
  • COUNT and ORDER BY are not supported.
  • It is possible to select structured fields (e.g. SELECT current_location.zip) or entire structures.
  • The output is XML.

How to count records

Given that output XML is transferred over the wire one should also take care of the bandwidth. For example we want to get COUNT (only) of all current user friends who installed the current application. COUNT is not supported so we need to fetch all required records and count them on the application side. The query should go like so:


SELECT '' 
  FROM user 
 WHERE uid IN (SELECT uid2 
                 FROM friend 
                WHERE uid1 = USERID)
   AND has_added_app = 1

Selecting empty string would reduce the size of the XML dramatically, yet it is very easy to count rows quickly.


Enjoy


Related Posts:

Sunday, October 07, 2007 3:42 AM

Comments

# 
Twitter Trackbacks for

FQL Tricks: How to Count Records
[x2line.com]
on Topsy.com

Twitter Trackbacks for

FQL Tricks: How to Count Records
[x2line.com]
on Topsy.com

5/13/2010 12:02 AM by Pingback/TrackBack

Login

Fosimo
Get Fosimo on CNET Download.com!
Subscribe via RSS

Article Categories

.Net Framework
ASP.NET Tips
C# Win32 API
HTML, CSS, Web
Javascript Tips
MSSQL Tips
System
System.Net
WebServices

Archives

(03) March, 2013
(02) February, 2013
(01) July, 2012
(01) April, 2012
(01) September, 2011
(01) August, 2011
(03) May, 2011
(01) March, 2011
(02) December, 2010
(01) November, 2010
(01) October, 2010
(01) September, 2010
(01) June, 2010
(01) May, 2010
(02) March, 2010
(01) January, 2010
(02) December, 2009
(03) September, 2009
(03) August, 2009
(09) July, 2009
(04) June, 2009
(04) May, 2009
(02) April, 2009
(05) March, 2009
(03) February, 2009
(03) January, 2009
(06) December, 2008
(04) November, 2008
(06) October, 2008
(07) September, 2008
(09) August, 2008
(05) July, 2008
(05) June, 2008
(07) May, 2008
(06) April, 2008
(03) March, 2008
(02) February, 2008
(04) January, 2008
(03) December, 2007
(05) November, 2007
(06) October, 2007
(07) September, 2007
(13) August, 2007
(11) July, 2007
(14) June, 2007
(16) May, 2007
(14) April, 2007
(10) March, 2007
(17) February, 2007
(21) January, 2007
(17) December, 2006
(14) November, 2006
(13) October, 2006
(13) September, 2006
(14) August, 2006
(12) July, 2006
(11) June, 2006
(12) May, 2006
(22) April, 2006
(36) March, 2006
(14) February, 2006
(14) January, 2006
(20) December, 2005
(17) November, 2005
(17) October, 2005
(17) September, 2005
(14) August, 2005
(18) July, 2005
(12) June, 2005
(17) May, 2005
(13) April, 2005
(22) March, 2005
(12) February, 2005
(14) January, 2005
(19) December, 2004
(15) November, 2004
(13) October, 2004
(16) September, 2004
(12) August, 2004
(29) July, 2004
(25) June, 2004
(33) May, 2004
(26) April, 2004
(18) March, 2004
(11) February, 2004
(07) January, 2004
(03) December, 2003
(02) November, 2003

Post Categories

.Net and C#
Android
Antispam
App. Development
Architecture
ASP.NET
Blogging
Delicer
Fosimo
Fun
Games
Google
iOS
Javascript
Misc.
MSSQL
Music
Performance
Roller
Social Networks
Tools
Visual Studio
Web 2.0
WebServices
Yahoo

About Me

linkedin Profile
Recs
Recs Books
Who am I

My Sites

onecone
x2line blogs