在struct标记中使用表名称时,SQLX“缺少目标名称”

The issue is that when I use struct tags with an object, they do not work properly. I've worked on projects before that have done the same thing but have had no issue, but I can't figure out why.

Example:

this does not work:

type Category struct {  
   ID          int            `json:"id" db:"category.id"`  
   Name        string         `json:"name" db:"category.name"`   
   Description string         `json:"description" db:"category.description"` 
}

error received: missing destination name id in *[]Category

this works fine:

type Category struct {  
   ID          int            `json:"id" db:"id"`   
   Name        string         `json:"name" db:"name"`    
   Description string         `json:"description" db:"description"` 
}

query:

result := []Category{}
query := `
    SELECT category.id, category.name, category.description FROM category;
    `
err := sqlx.Select(db, &result, query)

Running the query in a SQL editor works just fine. I also have worked on a proprietary project where prepending the table name to the tag works fine but for whatever reason I can't seem to get it going with this.

Appreciate the help,

EDIT:

using mysql

The mistake was actually made in the connection step!

I needed to add columnsWithAlias=true to the connection parameters and the code worked fine.

Thanks to RayfenWindspear for the tip that mysql doesn't send column names by default.