数据库 – 使用Mongo的“对象ID”作为其唯一标识符可以吗?如果是这样,怎么可以把它转换成一个字符串,并用字符串来查找?

例如…
user/view/?id=324gijsdfi3h25o1

我可以str()它…但…

如何用字符串找到它?

编辑:我希望Mongo中的每个文档都有一个唯一的标识符(通常是一个字符串),我可以查看.我希望对象ID可以是这个(因为它有很多字母,它是唯一的).我想要它与HTTP GET一起工作.查看?UID = e93jfsb0e3jflskdjf

解决方法

您可以使用字符串构造一个新的ObjectId.此示例使用MongoDB控制台:
db.users.find({ _id: ObjectId("4cdfb11e1f3c000000007822") })

我不能从你的问题告诉你使用哪种语言驱动程序(如果有的话),但大多数驱动程序也支持这个功能.

您不应将数据库中的ObjectId转换为字符串,然后将其与另一个字符串进行比较.如果你这样做,MongoDB不能使用_id索引,它将不得不扫描所有文档,导致查询性能不佳.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...