sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Construir este SQL IZQUIERDO () en MongoDB Query?

Si solo desea un número de teléfono que comience con el número '3', puede usar la decisión inteligente de @mstearn , aquí solo c# realización:

var query = Query.EQ("PhoneNumber", new BsonRegularExpression("^3"));

Pero digamos que si necesita consultar los primeros 3 números en el rango 345 -- 369 para que funcione (sin operadores lentos:$where , $regex ) puede crear un campo adicional y almacenar allí los primeros 3 números (código de área) del teléfono. Y luego use la consulta propuesta por @yi _H, aquí de nuevo la realización del controlador c#:

var query = Query.GTE("PhoneAreaCode", 345).LTE(369);

No te preocupes por extra campo en mongodb - es una práctica común. Los campos adicionales suelen funcionar más rápido que cualquier cálculo durante la consulta.