typeorm

@typeorm多表查询加模糊查询

在这里插入图片描述

首先我是一个新手,这是我在csdn上写的第一篇文章请多关照

然后我再这里祝福大家 身体健康 往事如意
接下来 就开始正题

之前肯定有很多同仁在这个问题上犯了难typeorm一个怎么多表查询并模糊查询呢?
今天我就来为大家解惑
相信大家之前也用过typeorm的多表连接加条件查询了

let a=getManager().getRepository(Teachers);
	let v=await a.find( 
		{
			relations: ['mtypes'],
			skip:Number(request.query.listSkip), 
			take:Number(request.query.ListNumber),
			where:{typeId:Number(request.query.typeId)}
		});
  • 我们要做的就是在这个多表链接的基础上进行更改
    首先大家先回忆一下在这套orm中有几种查询的方法
    大家第一个想到的肯定是find(),save()等一系列的方法,但是大家都忽略 了另一种方法query()方法
let videosData=await a.save({teacherName:request.body.teacherName,teacherImg:request.body.teacherImg,teacherTitle:request.body.teacherTitle,teacherRemark:request.body.teacherRemark,typeId:request.body.typeId});

let MtypesData=await R.find();
  • 用户自定义语句。
let a=getManager().getRepository(Teachers);
	let videosData=await a.query('select * from  teachers  where teacherId='+request.query.date); 
	console.log(videosData);
	response.json(videosData);
  • 我们接下来要要说的多表查询加模糊查询就是在这个基础上进行编码的
    首先我们把目光放在where的条件上,图中所用的方法就是我上面说的已经封装好的方法。我们要做的就是打破这种常规方法
    然后既然要打破我们就要做创新路,怎么创新呢?这就用到了我上面讲的query()方法,用了他,随心所欲的创新。
    接着既然要用创新应该怎么写呢?有图有真相
let a=getManager().getRepository(Teachers);
	let v=await a.find( 
		{
			relations: ['mtypes'],
			skip:Number(request.query.listSkip), 
			take:Number(request.query.ListNumber),
			**where:{typeId:Number(request.query.typeId)}**
		});
  • 可以看到我在query里面打了sql语句
    最后揭晓怎么实现多表查询加模糊查询,老规矩先上图
	let a=getManager().getRepository(Videos);
				console.log(request.query.videoTitle);
			let v=await a.find({
				 relations: ['teachers'],
				 **where:('videoTitle like "%'+request.query.videoTitle+'%"'),**
				});
  • 与上面的图对比我们可以看到,我的模糊查询语句打破了那种常规的写法,寻求了新的方法,最终得以实现。

以上就是我对于typeorm中多表查询加模糊查询的理解

  • 最后谢谢大家的观看
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值