TinyDB is a query processing system for extracting information from a network of TinyOS sensors. Unlike existing solutions for data processing in TinyOS, TinyDB does not require users to write embedded C code for sensors. Instead, TinyDB provides a simple SQL-like interface to specify the data you want to extract, along with additional parameters, such as the rate at which data should be refreshed--much as one would pose queries against a traditional database. Given a query specifying data interests, TinyDB collects that data from motes in the environment, filters it, aggregates it together, and routes it out to a PC. TinyDB does this via power-efficient in-network processing algorithms.