您好,我正在寻找与Django等价的SQL查询:
SELECT * FROM TABLE WHERE CONDITION
SELECT COLUMN_1 FROM TABLE WHERE CONDITION
UPDATE TABLE SET COLUMN_1 = 'values' WHERE condition
我在互联网上看到了不同的事物,所以我想确定这就是为什么我寻求您的帮助。
谢谢!
答案 0 :(得分:0)
您可以像这样在django中过滤查询:
MyModel.objects.filter(description='Hello Wolrd!')
这将返回带有所有MyModel的QuerySet,其描述等于Hello Wolrd!
退货范例:
<QuerySet [<MyModel: MyModel object (1)>,<MyModel: MyModel object (2)>,...]>
您可以看到返回的是带有对象MyModel的Queryset
如果只需要一些字段,可以尝试一下:
MyModel.objects.filter(description='Hello Wolrd!').values('name','id')
这仅返回名称和ID。
退货示例:
<QuerySet [{'name': 'Joao', 'id': 1}, {'name': 'Lucas', 'id': 2}, ...]>
返回的结果就像字典
如果您可以通过模型更新值,则需要这样:
对于一种型号:
m = MyModel.objects.get(id=1)
m.name = 'OlokoMeu'
m.save()
或
带有过滤器对象
MyModel.objects.filter(description='Hello World!').update(name='Lorem')
有关更多信息: https://docs.djangoproject.com/en/2.2/topics/db/queries/ https://docs.djangoproject.com/pt-br/2.1/ref/models/querysets/#django.db.models.query.QuerySet.update