1
我有像我下面的模型結構:Golang:SQLX StructScan映射數據庫列結構
type Detail struct {
Product
Stocks
}
type Product struct {
Name string `db:"name"`
Id int `db:"id"`
}
type Stocks {
Name string `db:"name"`
Price float `db:"price"`
Type string `db:"type"`
}
我想有一個查詢加入上述表格的形式大致如下:
query, args, err := sqlx.In("select p.name , s.price from Product p,Stocks s where p.name=s.name and type IN (?)",typecodes)
query = s.Cmd.Db.Rebind(query)
var rows *sqlx.Rows
rows, err = s.Cmd.Db.Queryx(query, args...)
for rows.Next() {
var p model.Detail
err = rows.StructScan(&p)
}
會想知道我什麼時候做rows.StructScan(& p)將產品結構名稱字段填充或將有任何ambuigity發現相同,因爲股票也有名稱字段?
目前我沒有得到上述任何結果。但是當我評論股票結構中的名稱字段時,我正在獲取數據。
讓我知道我在這裏失蹤。
對於模棱兩可的領域你最好與他們的結構名稱的前綴,註解它們,例如'product_name','stock_name',然後在您的SQL語句中適當地使用它們。 –
感謝Martin.It工作得很好:) –
@MartinGallagher發佈那個答案。 – icza