当前位置: 首页 > 知识库问答 >
问题:

如何改变datetime字符串在SQL查询?[重复]

李洋
2023-03-14

这是我的代码,查询Notification.create_time

result = session.query(
        Notification.content, cls.is_read,
        Notification.create_time).join(
        cls, Notification.id == cls.notification).filter(
            and_(cls.user == user_id)).order_by(
                Notification.create_time.desc()).all()

在另一个地方,需要将json.dumps查询结果转储到前端,datetime格式不能使用json.dumps,所以我想这样做:

session.query(Notification.create_time.strftime('%Y-%m-%d %H:%M'))

那么,如何在sqlalchemy查询中将datetime更改为字符串呢?

共有1个答案

龙佐
2023-03-14

可以使用func.to_char()(在postgres中,不确定mysql)将日期时间转换为字符串,例如:

from sqlalchemy.sql import func
session.query(func.to_char(Notification.create_time, '%Y-%m-%d %H:%M'))

但更好的方法是设置json序列化程序来处理日期时间之类的事情,如本答案中所述

 类似资料:
  • 这是波莉适合的场景吗?或者从设计的角度来看,在业务逻辑中处理这个是干净的方式吗?然后我需要包装这个逻辑以避免重复我自己。

  • 问题内容: 考虑一下我有这行代码 恕我直言,这很容易受到SQL注入的攻击。 因此,我想通过Get / URL发送一个“ var”参数来证明它是可以尝试的,该参数将注入查询,并带有潜在的恶意代码。 我实际上尝试过: 我尝试在执行之前打印出SQL字符串查询,它实际上是2条SQL有效语句。 第一个问题,但实际上似乎mysqli-> query不会一次执行2条语句。是不是 第二个问题,我看到注入查询的一种

  • 我如何能使这工作? 它会给出以下错误: "无效的日期格式31.01.2020 00:00:00"

  • 问题内容: Magento构造其SQL查询,例如 有没有办法以字符串格式显示结果查询,而不是打印出巨大的对象,例如 问题答案:

  • 问题内容: 我正在尝试找到格式化sql查询字符串的最佳方法。在调试应用程序时,我想记录所有sql查询字符串的文件,并且正确格式化字符串很重要。 选项1 这对于打印sql字符串很有用。 如果字符串太长且不适合80个字符的标准宽度,则不是一个好的解决方案。 选项2 这里的代码很清楚,但是当您打印sql查询字符串时,会得到所有这些烦人的空格。 的u ‘\ n选取FIELD1,FIELD2,字段3,字段4

  • 问题内容: 我不敢相信我在问这个,但是… 您如何使用SCALA在SPARK SQL中逃逸SQL查询字符串? 我已经厌倦了一切,到处搜寻。我以为apache commons库可以做到,但是没有运气: ”‘“).map(_.getValuesMapAny)).collect().foreach(println); 返回以下内容: topic =’‘’Ulmus_minor _’‘Toledo’‘’^在