newlisp通过JavaScript查询MongoDB记录

因为MongoDB支持执行JavaScript文件查询,所以newlisp就可以通过这种方式获得查询结果。

下面是我的newlisp模块:

(context ‘MONGO_JS_TOOL)

(define (query db-name js-file)
  (set ‘cmd (format "mongo localhost/%s %s" db-name js-file))
  (set ‘r (exec cmd))
  (set ‘r (STRING_LIST:remove r "^MongoDB.+" 1))
  (set ‘r (STRING_LIST:remove r "^connecting.+" 1))
  (set ‘rl ‘())
  (set ‘line "")
  (dolist (e r)
    (set ‘line (append line (replace "\t" e "")))
    (if (= "}" e)
	(begin
	  (push line rl -1)
	  (set ‘line ""))))
  rl
  )

下面是调用命令:

(load "mongo.lsp")

(set ‘rl (MONGO_JS_TOOL:query "kfc" "strategy.js"))
(println rl)

执行结果是:

./schedule.lsp
("{\"_id\" : ObjectId(\"53bbf667b78d338d48d0f86f\"),\"send_time\" : \"21:47\",\"text\" : \"afdfd\"}"
 "{\"_id\" : ObjectId(\"53cb4c625f94f3ac8af92b46\"),\"send_time\" : \"06:29\",\"text\" : \"66gg\"}")
时间: 2024-08-25 17:24:48

newlisp通过JavaScript查询MongoDB记录的相关文章

关于php查询mongodb限制返回字段的问题

最近想做一个前端控制接口字段返回的一个基础方法,通过mongodb 的find($query,$field)查询来规定查询的字段,但是遇到这么一个问题: 工作代码中有两个封装方法 : /** * 查询一条记录 * @param string 集合名 * @param array 查询条件 * @param array 需要返回的字段 * @return array 查询的结果 */ public function find_one($coll_name, $condition = array()

sql查询重复记录、删除重复记录方法大全

1.查询重复记录单字段 select * from tbl a where  exists(select 1 from  tbl b where a.username=b.username group by username  having count(*) > 1) 2.查询重复次数 select clistname,count(clistname) from clalist  group by clistname having count(*)>1 3.删除重复记录,留有rowid最小的记

crm2011 使用SOAP 查询单个记录 Retrieve

function getServiceUrl() { var serverUrl = Xrm.Page.context.getServerUrl(); if (serverUrl.match(/\/$/)) { serverUrl = serverUrl.substring(0, serverUrl.length - 1); } return serverUrl + "/XRMServices/2011/Organization.svc/web"; } function Retriev

Oracle查询当前记录的上一条记录或下一条记录

//查询当前记录的 //oracle 上一条记录select decode(decode(txbs,'无',null,txbs),lag(t.txbs, 1, 0) over(order by t.cjid),'是','否')from qb_app_rycj t //下一条记录select t.id, lead(t.id, 1, 0) over(order by t.sort,t.eidt_date) as p from cms_article t

JavaScript实现按键记录,并在关掉网页之前把记录的内容post出去

最近陈老师让我给新架构加一个按键记录的业务.去学习了JavaScript,网上找了一些代码,最后写出来了: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML> <HEAD><TITLE>js 按键记录</TITLE> <META NAME="Generator" CONTENT="EditPlus&quo

crm2011查询审核记录

using System; using Microsoft.Xrm.Sdk; using Microsoft.Crm.Sdk.Messages; /// <summary> /// 查询审核记录 /// </summary> public class RetrieveRecordChangeHistoryRequestHelper { public void Retrieve(IOrganizationService service,string entityName,Guid i

PHP查询MongoDB慢的问题

问题背景: 公司和腾迅合作开发了一款手游,需要开发一个后台管理平台来统计每日游戏数据:数据量相对比较大的集合有两个,一个是user_info,大约有2453条数据,另外一个是room_data,大约有8456条数据. 问题内容: 功能开发完毕,可是查询mongodb数据库并显示数据特别慢,用时大约10S.这是什么鬼,为何如此之慢? 问题解决办法: 首先想到的是给集合添加索引,将所操作集合添加完索引后依旧没有解决问题!汗!什么原因?还是先去问问度娘吧!问了一痛问题还是没有解决.既然度娘解决不了,还

Mssql 查询某记录前后N条

Sqlserver 查询指定记录前后N条,包括当前数据 条件 [ID] 查询 [N]条 select * from [Table] where ID in (select top ([N]+1) ID from [Table] where id <=[ID] order by id descunionselect top [N] ID from [Table] where id>[ID] order by id )order by ID 例如:有数据表 A id    name    date

mysql-关联查询sql记录

//查询账单关联订单 select o.id as id, o.order_no as orderNo, o.case_no as caseNo, o.send_time as sendTime, o.final_time as finalTime, (select ca.car_no from fm_order_case ca where ca.case_no = o.case_no) as carNo, (select co.service_money from fm_order_cost