Question: If I do `$collection->getSelect()` I am moving from `collection` object to `select` object and I can use some useful stuff more close to raw sql. 

But what can I do to get back from `select` to magento `collection`?  

If, for example, I want to use `$collection->getFirstItem()->getId()`?

Answer: 
```
$collection = your collection here;
$select = $collection->getSelect();
//do nasty stuff with the $select object.  

```

since this is an object, it is passed by reference and anything you change in it will be reflected in the collection select

Then you can use again:

```
$collection->getFirstItem();

```
As long as you don't store the result of `getSelect()` into a new variable and try to call the collection methods on that new variable, you should still be able to use collection methods.

For example:

```
$collection->getSelect()->where('is_enabled=?', 0);
return $collection->getFirstItem();

```

This would work perfectly fine.