Source of: /manual/es/mongo.sqltomongo.php
<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/mongo.manual.inc";
$setup = array (
'home' =>
array (
0 => 'index.php',
1 => 'PHP Manual',
),
'head' =>
array (
0 => 'UTF-8',
1 => 'es',
),
'this' =>
array (
0 => 'mongo.sqltomongo.php',
1 => 'Tabla de correlación de SQL a Mongo',
),
'up' =>
array (
0 => 'mongo.manual.php',
1 => 'Manual',
),
'prev' =>
array (
0 => 'mongo.writeconcerns.php',
1 => 'Asuntos de Escritura (Write Concerns)',
),
'next' =>
array (
0 => 'mongo.connecting.php',
1 => 'Conexión',
),
'alternatives' =>
array (
),
);
$setup["toc"] = $TOC;
$setup["parents"] = $PARENTS;
manual_setup($setup);
manual_header();
?>
<div id="mongo.sqltomongo" class="chapter">
<h1>Tabla de correlación de SQL a Mongo</h1>
<p class="para">
Esta es una versión específica de PHP de la tabla de correlación de
<a href="http://docs.mongodb.org/manual/reference/sql-comparison/" class="link external">» SQL a Mongo</a>
de la documentación principal.
</p>
<p class="para">
<table class="doctable informaltable">
<thead>
<tr>
<th>Sentencia SQL</th>
<th>Sentencia en el Lenguaje de Consulta Mongo</th>
</tr>
</thead>
<tbody class="tbody">
<tr>
<td>
<em>CREATE TABLE USERS (a Number, b Number)</em>
</td>
<td>
Implícito, o utilice <span class="function"><a href="mongodb.createcollection.php" class="function">MongoDB::createCollection()</a></span>.
</td>
</tr>
<tr>
<td>
<em>INSERT INTO USERS VALUES(1,1)</em>
</td>
<td>
<em>$db->users->insert(array("a" => 1, "b" => 1));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT a,b FROM users</em>
</td>
<td>
<em>$db->users->find(array(), array("a" => 1, "b" => 1));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users WHERE age=33</em>
</td>
<td>
<em>$db->users->find(array("age" => 33));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT a,b FROM users WHERE age=33</em>
</td>
<td>
<em>$db->users->find(array("age" => 33), array("a" => 1, "b" => 1));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT a,b FROM users WHERE age=33 ORDER BY name</em>
</td>
<td>
<em>$db->users->find(array("age" => 33), array("a" => 1, "b" => 1))->sort(array("name" => 1));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users WHERE age>33</em>
</td>
<td>
<em>$db->users->find(array("age" => array('$gt' => 33)));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users WHERE age<33</em>
</td>
<td>
<em>$db->users->find(array("age" => array('$lt' => 33)));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users WHERE name LIKE "%Joe%"</em>
</td>
<td>
<em>$db->users->find(array("name" => new MongoRegex("/Joe/")));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users WHERE name LIKE "Joe%"</em>
</td>
<td>
<em>$db->users->find(array("name" => new MongoRegex("/^Joe/")));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users WHERE age>33 AND age<=40</em>
</td>
<td>
<em>$db->users->find(array("age" => array('$gt' => 33, '$lte' => 40)));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users ORDER BY name DESC</em>
</td>
<td>
<em>$db->users->find()->sort(array("name" => -1));</em>
</td>
</tr>
<tr>
<td>
<em>CREATE INDEX myindexname ON users(name)</em>
</td>
<td>
<em>$db->users->ensureIndex(array("name" => 1));</em>
</td>
</tr>
<tr>
<td>
<em>CREATE INDEX myindexname ON users(name,ts DESC)</em>
</td>
<td>
<em>$db->users->ensureIndex(array("name" => 1, "ts" => -1));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users WHERE a=1 and b='q'</em>
</td>
<td>
<em>$db->users->find(array("a" => 1, "b" => "q"));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users LIMIT 10 SKIP 20</em>
</td>
<td>
<em>$db->users->find()->limit(10)->skip(20);</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users WHERE a=1 or b=2</em>
</td>
<td>
<em>$db->users->find(array('$or' => array(array("a" => 1), array("b" => 2))));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT * FROM users LIMIT 1</em>
</td>
<td>
<em>$db->users->find()->limit(1);</em>
</td>
</tr>
<tr>
<td>
<em>EXPLAIN SELECT * FROM users WHERE z=3</em>
</td>
<td>
<em>$db->users->find(array("z" => 3))->explain()</em>
</td>
</tr>
<tr>
<td>
<em>SELECT DISTINCT last_name FROM users</em>
</td>
<td>
<em>$db->command(array("distinct" => "users", "key" => "last_name"));</em>
</td>
</tr>
<tr>
<td>
<em>SELECT COUNT(*y) FROM users</em>
</td>
<td>
<em>$db->users->count();</em>
</td>
</tr>
<tr>
<td>
<em>SELECT COUNT(*y) FROM users where AGE > 30</em>
</td>
<td>
<em>$db->users->find(array("age" => array('$gt' => 30)))->count();</em>
</td>
</tr>
<tr>
<td>
<em>SELECT COUNT(AGE) from users</em>
</td>
<td>
<em>$db->users->find(array("age" => array('$exists' => true)))->count();</em>
</td>
</tr>
<tr>
<td>
<em>UPDATE users SET a=1 WHERE b='q'</em>
</td>
<td>
<em>$db->users->update(array("b" => "q"), array('$set' => array("a" => 1)));</em>
</td>
</tr>
<tr>
<td>
<em>UPDATE users SET a=a+2 WHERE b='q'</em>
</td>
<td>
<em>$db->users->update(array("b" => "q"), array('$inc' => array("a" => 2)));</em>
</td>
</tr>
<tr>
<td>
<em>DELETE FROM users WHERE z="abc"</em>
</td>
<td>
<em>$db->users->remove(array("z" => "abc"));</em>
</td>
</tr>
</tbody>
</table>
</p>
</div>
<?php manual_footer(); ?>