sqlalchemy order_by降序/升序

2023-11-07

sqlalchemy中的query默认是按id升序进行排序的,当遇到复杂情况时就需要时用order_by。
下面介绍几种order_by 的几种使用方法

session.query(User).order_by(User.create_time.desc()).all()

from sqlalchemy import desc
query.order_by(desc(Usser_ID)).all()

order_by多种条件自定义排序
需要根据status来排序,status的值为(1,2,3),排序的方式是(1,3,2),还需要在1,3中间加入另外一个字段modify_user==None。

from sqlalchemy import case

offices_query.order_by(case(((ResourcesOffice.status =='1',1),(ResourcesOffice.modify_user.is_(None),2),(ResourcesOffice.status =='3',3),(ResourcesOffice.status.is_(None),4),(ResourcesOffice.status =='2',5))))

上面的case里面是一个元组,然后(ResourcesOffice.status ==‘1’,1),后面的1代表的是顺序,前面的是筛选条件,下面以此类推。

多字段排序可以用上面的方法,如果只按照一个字段来排序,可以用下面的方法。

from sqlalchemy import case

officees_query.order_by(case(value=ResourcesOffice.status, where={'1': 1, '3':2, '2': 3}))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

sqlalchemy order_by降序/升序 的相关文章

  • numpy回忆

    numpy对矩阵操作后 输出的形状与想象的不一样 记个笔记代码 点乘的padding操作容易出错 开发时间 4 24 import numpy as np Data np array 1 2 255 255 0 255 255 0 0 3
  • Python Serial串口的简单数据收发

    导入模块 注意这里模块名是pyserial pip install pyserial 1 打开串口 import serial com serial Serial COM3 9600 print com 2 发送数据 import seri
  • 【python基础】猜数字游戏

    前言 相信很多人都玩过猜数字游戏 游戏规则也十分简单 还记得小时候我经常和朋友一起玩 我们在桌上摆放一些1 100以内的数字卡片 一个人随机抽取一张卡片 这里不许偷看卡片内容 首先这个人随机猜一个数字 然后其他人会告诉你猜大了还是猜小了 先
  • 如何在Anaconda安装Pygame

    开始之前 先来安装Pygame 可使用pip模块来帮助下载安装python包 要安装Pygame 需在终端提示符下执行如下命令 python m pip install user pygame 对于下载了anaconda用户 可按以下操作
  • python通过ssl加密连接mysql

    目录 1 django程序的配置 2 pymysql连接数据库 3 DBUtils数据库连接池连接配置 我们在连接某些数据库时 需要提供ssl证书 如果是IT的数据库 那么可能会提供下载 如果是自己想做 可参考如下步骤 https dev
  • Python基础(3)——PyCharm介绍

    Python基础 3 PyCharm介绍 文章目录 Python基础 3 PyCharm介绍 课程目标 一 PyCharm的作用 二 下载和安装 2 1 下载 2 2 安装 三 PyCharm基本使用 3 1 新建项目 3 2 新建文件并书
  • 浅拷贝和深拷贝: copy模块的copy()和deepcopy()函数(*^▽^*)

    我们在平时处理列表和字典的时候 有时候希望创建一个列表或者字典的副本拿出来使用 但是同时我们也不希望列表 字典 和其列表 字典 副本还保留着某种联系的时候 比如说我们在修改列表的时候副本也跟着同步被修改了 这是我们最不想看到的情况 这种情况
  • python爬虫对网页进行数据抓取

    1 拿到网页源代码 1 1 先看网址 和请求方式 1 2导入requests模块 1 3 发现爬不出来 是因为豆瓣做了伪装 1 3需要更换头部 1 4需要设置utf 8 要不然会乱码2 提取想要的数据 2 1 加载re模块 并且进行预加载
  • 三、Python基础(高级变量类型篇)

    三 Python基础 高级变量类型篇 目录 三 Python基础 高级变量类型篇 一 列表 list 1 列表的定义 2 列表的常用方法和操作 对象 方法名 参数 3 for in对列表迭代遍历 4 利用 for in 的输出技巧 5 se
  • Python基础11 (End)

    Python基础11 End 学习11 第七章 模块 module 1 模块化 module 程序设计理念 1 Python 程序由模块组成 一个模块对应 python 源文件 一般后缀名是 py 2 模块由语句组成 运行 Python 程
  • 吴恩达机器学习笔记:手搓线性回归(梯度下降寻优)

    概念就不介绍了 记录下公式推导和代码实现 以及与最小二乘的比较 吴恩达老师课程中使用一个参数theta保存两个变量 不过我好像没把中间变量的形状对齐 所以最后实现了两个参数的版本 代码 import time import numpy as
  • Python中类成员变量与实例成员变量相互影响的原因超详细解释

    今天在看python学习手册时看到了两句话 一 第26章中 类对象提供默认行为 二 第26章中 实例对象是具体的元素 书中给的例子是这样的 但上网查了一下好像第二句话不是非常准确 如下面的文章 原文 https www jb51 net a
  • 2023年IT行业就业前景分析,准职场人必看!

    随着疫情的放开 2022已接近尾声 新的一年即将来临 作为打工人最关心的肯定是2023年的就业市场以及行业未来发展前景 如何最直观地看待这个行业是否还有前景 最好的方式就是看市场需求 作为准职场人的你 速速关注起来 根据智联招聘10月发布的
  • 【Python】Python基础知识总结

    欢迎来到Python专栏 Python基础知识总结 o o 嗨 我是小夏与酒 博客主页 小夏与酒的博客 该系列文章专栏 Python学习专栏 文章作者技术和水平有限 如果文中出现错误 希望大家能指正 欢迎大家关注 目录 Python基础知识
  • 职场上会用Python的人到底有多牛?

    这个人工智能崛起的时代 似乎人人都在聊 Python 从硬件的芯片层面 物联网 一路杀到云端 大数据 人工智能这些炙手可热的领域 无论什么领域 只要它需要编程 都会有Python的身影 下面就和大家一起来聊聊 Python 的好 到底它牛在
  • pycharm配置镜像源

    一 背景 由于python再下载包时 下载时容易出现超时 等各种问题 原因 由于Python库的服务器都在国外 国内下载是速度普遍会很慢 所以需要配置一个镜像源来加快下载速度 二 解决方案 方案一 配置国内镜像源 清华 https pypi
  • python基础之程序执行原理(科普)

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 一 计算机的三大件 二 计算机执行 三 python程序的执行原理 四 程序的作用 一 计算机的三大件 1 cpu 本质上是一块超大规模集成电路 2 内存 存储设备
  • 保姆级python入门教程(非常详细),从零基础入门到精通,从看这篇开始!

    一 初聊Python 文末有惊喜福利 1 为什么要学习Python 在学习Python之前 你不要担心自己没基础或 脑子笨 我始终认为 只要你想学并为之努力 就能学好 就能用Python去做很多事情 在这个喧嚣的时代 很多技术或概念会不断兴
  • Python中的None

    一 None None是python中的一个特殊的常量 表示一个空的对象 数据为空并不代表是空对象 例如空列表 等都不是None None有自己的数据类型NontType 你可以将None赋值给任意对象 但是不能创建一个NoneType对象
  • python基础之数据类型知识(1)

    注释 注解 解释 说明文字而已 特征 注释只是用于说明的文字不会影响内容本身 作用 1 用于添加说明文字 方便阅读 2 用于调试程序 排查错误 分类 单行注释 多行注释 内容 或者 内容 代码 print hello world print

随机推荐

  • 液晶屏的接口信号RGB_TTL、LVDS、MIPI

    RGB TTL信号是TFT LCD能识别的标准信号 就算是以后用到的LVDS TMDS 都是在它的基础上编码得来的 RGB TTL信号可分为数据信号RGB 行同步信号HS 场同步信号VS 时钟信号CLK 使能信号DE 其中R G G三基色中
  • C# 线程暂停和恢复

    文章目录 前言 一 暂停与恢复 二 功能实现 1 按钮事件 播放和停止 2 线程和ManualResetEvent 总结 前言 因为需要一个自动播放和暂停图片的功能 所以就非常自然想到了创建一个线程 用点击事件控制线程的暂停和启动 一 暂停
  • [Windows驱动开发](四)内存管理

    一 内存管理概念 1 物理内存概念 Physical Memory Address PC上有三条总线 分别是数据总线 地址总线和控制总线 32位CPU的寻址能力为4GB 2的32次方 个字节 用户最多可以使用4GB的真实物理内存 PC中很多
  • PyTorch简介

    PyTorch是一个针对深度学习 并且使用GPU和CPU来优化的tensor library 张量库 最新发布的稳定版本为1 9 源码在https github com pytorch pytorch 它支持在Linux Mac和Windo
  • kafka启动失败,报错java.lang.NoSuchMethodError

    ERROR KafkaServer id 1 Fatal error during KafkaServer startup Prepare to shutdown kafka server KafkaServer java lang NoS
  • Java迭代器和Collection接口

    各位小伙伴们大家好 欢迎来到这个小扎扎的 Java核心技术 卷 笔记专栏 在这个系列专栏中我将记录浅学这本书所得收获 鉴于 看到就是学到 学到就是赚到 精神 这波简直就是血赚 涉及的知识点速通 关于迭代器你都知道什么 什么是迭代器 迭代器的
  • 机智云GoKit3点灯教程(基于正点原子的代码风格)

    首先的首先 吐槽一波机智云的教程 官方的教程总是让下它那个微信宠物屋的代码 一步看结果 拜托 就不能来个一步一步地教程吗 还有那个宠物屋的代码看得很头痛啊 总而言之 官方的教程给我的感觉就是很凌乱 按习惯 拿到板子先点个灯 下面就来一步一步
  • java tomcat get url地址长度如何设置_解决Springboot get请求是参数过长的情况

    问题原因 Springboot get请求是参数过长抛出异常 Request header is too large 的问题 错误描述 java lang IllegalArgumentException Request header is
  • sonarQube10.0代码审计软件安装(一)

    sonarQube10 0代码审计软件安装 一 下载地址 官网 可能需要科学上网一下 安装教程 选择Try out SonarQube 页面中即可发现Installing a local instance of SonarQube 下方即为
  • linux2——GDB调试,makefile规则(比之前的深一点点)

    一 常用gdb指令一览 二 makefile 1 超简单例子 2 基本规则 在替换之前 能看懂之前 3 经过替换开始一眼看不懂 4 但是即便经过3的变换也无法做到 自动化扩展 比如加一个乘法函数就需要再写一个乘法的规则 因此有模式规则 o
  • Spring Bean生命周期doCreateBean源码阅读

    bean的生命周期的几个后置接口都是在这个方法里面调用 所以单独开一篇该方法的源码阅读 下面从两个点来阅读 1 何时调用 只看容器启动 2 梳理这个方法的流程 跟上一节对应上 先贴上源码 protected Object doCreateB
  • java使用ffmpeg实现视频切割

    因为公司项目的部分需求 需要将已经录制好的视频 从固定时间开始截取 到固定时间结束 并且将视频截取成相对平均的若干段视频 目前demo实现了 后续还会继续优化 在视频截取的时候 从关键帧开始或结束 1 首先需要安装FFmpeg 2 直接上代
  • mysql插入100000条记录的方法

    1 存储过程 背景 运行的环境 就是命令行界面 可以实navicat sqlyog datagrip等 截图如下 1 建表 建表 create table test id int not null primary key score int
  • Unity 开发常用功能

    从本地读取文件
  • 基于 Matlab 的贝叶斯优化 LSTM 时间序列预测

    基于 Matlab 的贝叶斯优化 LSTM 时间序列预测 时间序列预测是一项重要的任务 它可以帮助我们理解和预测各种现象和趋势 而 LSTM Long Short Term Memory 是一种强大的循环神经网络模型 特别适用于处理时间序列
  • vue首次加载白屏过渡动画(vue优化)

    过渡动画需要在index html文件里面添加 1 css 在public index css创建index css html body app height 100 margin 0px padding 0px chromeframe m
  • OpenCV自带函数实现灰度图像平移和旋转算法(平面内)

    float shift and rot test opencv cv Mat des Vector2f shift int rot float center x DIM SAMPLE POINTS X 1 2 0 float center
  • (详解)js中什么是宏任务、微任务?宏任务、微任务有哪些?又是怎么执行的?

    目录 参考资料 必看强烈建议十分钟看完视频 即可学会 必看参考详解宏任务微任务 笔记 宏任务与微任务 定时器的任务编排 promise的微任务处理逻辑 DOM渲染任务 任务队列共享内存 进度条的实现 任务拆分成多个任务 promise复杂任
  • Dyanmics CRM您无法登陆系统。原因可能是您的用户记录或所属的业务部门在Microoft Dynamics CRM中已被禁用...

    当在操作CRM时 做任何的写操作包括创建数据 更新数据 都会提示下面截图中的错误 您无法登陆系统 原因可能是您的用户记录或所属的业务部门在Microoft Dynamics CRM中已被禁用 根据错误提示第一反应就是当前操作用户的业务部门被
  • sqlalchemy order_by降序/升序

    sqlalchemy中的query默认是按id升序进行排序的 当遇到复杂情况时就需要时用order by 下面介绍几种order by 的几种使用方法 session query User order by User create time