Mysql SQL是否有Django';s";获取“u FOO”显示();像模拟的?

Mysql SQL是否有Django';s";获取“u FOO”显示();像模拟的?,mysql,sql-server,django,Mysql,Sql Server,Django,例如,我的一个模型中有一个字段状态: CHOICES = ( ('new', u'New'), ('old', u'Old'), ) status = models.CharField(u'Status', max_length=10, choices=CHOICES, default=0) 如果我在SQL中键入:t1.status,我将得到new&old,而不是new&old 而在django中,我可以键入:get_status\u display()来获取New和Old,在

例如,我的一个模型中有一个字段状态:

CHOICES = (
    ('new', u'New'),
    ('old', u'Old'),
)
status = models.CharField(u'Status', max_length=10, choices=CHOICES, default=0)
如果我在SQL中键入:
t1.status
,我将得到
new
&
old
,而不是
new
&
old
而在django中,我可以键入:
get_status\u display()
来获取
New
Old
,在SQL中如何实现这一点呢?

在django中,元组
('New',u'New')
正好是两个项的组合

元组的第一个元素将存储在数据库中,它可以是整数,也可以只是一个字符

第二个元素只是一个人类可读的标签,在呈现表单小部件和检索字段表示时使用

SQL查询直接在数据库上执行,其中没有选项映射的信息,选项映射由Django ORM层处理

所以不能使用SQL获取元组的第二个元素

如果您只想使用SQL将输出大写,请参考以下内容