GORM 如何读取别名字段的值

MySQL
524
0
0
2022-04-14

查询数据时给字段设置别名,请问使用 GORM 如何把别名字段的值读取到结构体中?

表结构

DROP TABLE IF EXISTS "test"."test";
CREATE TABLE "test"."test" ("id" varchar(32) NOT NULL,"name" varchar(255) COLLATE "pg_catalog"."default","remark" varchar(255) COLLATE "pg_catalog"."default"
);
ALTER TABLE "test"."test" ADD CONSTRAINT "test_pkey" PRIMARY KEY ("id");

表对应模型结构体

type Test struct {ID     string  `gorm:"column:id;type:varchar(32);primaryKey;comment:唯一 ID,流水号" json:"id"` // 唯一 ID,流水号
    Name   string `gorm:"column:name;type:varchar(255);comment:名称" json:"name"` // 名称
    Remark string  `gorm:"column:remark;type:varchar(255);comment:备注" json:"remark"` // 备注

    MoreInfo string `gorm:"-" json:"moreInfo"` // 更多信息,非表结构字段
}

GORM 查询

gormDB 为已初始化的 gorm 数据库连接。

test := Test{ID: "0000000001"}
gormDB.Select("*, 'testMoreInfoVal' AS more_Info").Where(&test).Find(&test)

问:如何用 GORM 将表结构中不存在的别名字段 more_Info 读取到 Test 结构体的 MoreInfo 属性中?