【python】 @property属性详解 and mysql的sqlalchemy的原生sql解析json数据类型

-- https://zhuanlan.zhihu.com/p/685199069
mysql> SET @j = '["abc", [{"k": "10"}, "def"], {"x":"abc"}, {"y":"bcd"}]';

mysql> SELECT JSON_SEARCH(@j, 'all', '10', NULL, '$[*][0].k');
+-------------------------------------------------+
| JSON_SEARCH(@j, 'all', '10', NULL, '$[*][0].k') |
+-------------------------------------------------+
| "$[1][0].k"                                     |
+-------------------------------------------------+
-- MySQL对JSON数据内对象进行更新: 
-- https://blog.csdn.net/yuxiangmitu/article/details/135996030
from jsonpath_ng import jsonpath, parse
import json
 
# 示例JSON数据
json_data = {
    "store": {
        "book": [
            {
                "category": "reference",
                "author": "Nigel Rees",
                "title": "Sayings of the Century",
                "price": 8.95
            },
            {
                "category": "fiction",
                "author": "Evelyn Waugh",
                "title": "Sword of Honour",
                "price": 12.99
            }
        ],
        "bicycle": {
            "color": "red",
            "price": 19.95
        }
    }
}
 
# JSONPath表达式,用于选取需要更新的数据
jsonpath_expr = parse('$.store.book[*].price')
 
# 更新价格,假设我们要将价格增加5%
for match in jsonpath_expr.find(json_data):
    match.value *= 1.05
 
# 输出更新后的JSON数据
print(json.dumps(json_data, indent=4))

【python】 @property属性详解
一文搞懂python中常用的装饰器(@classmethod、@property、@staticmethod、@abstractmethod…)

sqlalchemy的原生sql

from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
 
# 数据库连接字符串
DATABASE_URI = 'mysql+pymysql://user:password@localhost:3306/database'
 
# 创建引擎
engine = create_engine(DATABASE_URI)
 
# 创建会话
Session = sessionmaker(bind=engine)
session = Session()
 
# 原生SQL语句
sql_query = "SELECT * FROM your_table WHERE your_condition = :value"
 
# 执行SQL语句
result = session.execute(sql_query, {'value': 'desired_value'})
 
# 处理结果
for row in result:
    print(row)
 
# 关闭会话
session.close()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值