Postgresql *[]*model.ModelName中缺少目标名称u.shake\u hands\u id
我在尝试Postgresql *[]*model.ModelName中缺少目标名称u.shake\u hands\u id,postgresql,go,Postgresql,Go,我在尝试tx时遇到此错误。请从数据库中选择一些数据 *[]*model.ModelName中缺少目标名称u.shake\u hands\u id 我的问题是这样的: 选择u.shake\u hands\u id作为“u.shake\u hands\u id”,选择u.model\u id作为“u.model\u id” 来自查询(感兴趣) 其中u.shake_hands_id=$1 我的结构就像 类型ShakeShandModels结构{ ShakeHandsId uuid.uuid`db:“
tx时遇到此错误。请从数据库中选择一些数据
*[]*model.ModelName中缺少目标名称u.shake\u hands\u id
我的问题是这样的:
选择u.shake\u hands\u id作为“u.shake\u hands\u id”,选择u.model\u id作为“u.model\u id”
来自查询(感兴趣)
其中u.shake_hands_id=$1
我的结构就像
类型ShakeShandModels结构{
ShakeHandsId uuid.uuid`db:“握手”`
ModelId字符串`db:“model\u id”`
}
您的查询:
SELECT u.shake_hands_id as "u.shake_hands_id",u.model_id as "u.model_id"
...
不会生成名为shake\u hands\u id
或model\u id
的列,就像您的struct
指定的那样。别名周围的双引号告诉PostgreSQL命名别名u.shake\u hands\u id
和u.model\u id
(即
是别名的一部分,而不是充当分隔符)。您根本不需要别名,这是:
SELECT u.shake_hands_id, u.model_id
FROM enquiry_interest u
WHERE u.shake_hands_id = $1
那就好了,就像:
SELECT shake_hands_id, model_id
FROM enquiry_interest
WHERE shake_hands_id = $1
如果出于某种原因必须使用别名,则不必使用引号:
SELECT u.shake_hands_id as shake_hands_id, u.model_id as model_id
FROM enquiry_interest u
WHERE u.shake_hands_id = $1
或者确保只引用正确的内容:
SELECT u.shake_hands_id as "shake_hands_id", u.model_id as "model_id"
FROM enquiry_interest u
WHERE u.shake_hands_id = $1
但实际上,除非你真的需要报价,否则不要使用报价。请提供一份报价单;看起来您正在使用标准库之外的内容(例如?),但不提供任何详细信息。