【发布时间】:2018-09-02 02:19:12
【问题描述】:
package main
import (
"database/sql"
"fmt"
"github.com/gin-gonic/gin"
)
func main() {
router := gin.New()
router.Use(gin.Logger())
router.Use(gin.Recovery())
db, err := sql.Open("mysql", "root:password@tcp(gpstest.cksiqniek8yk.ap-south-1.rds.amazonaws.com:3306)/tech")
if err != nil {
fmt.Print(err.Error())
}
err = db.Ping()
if err != nil {
fmt.Print(err.Error())
}
rows, err := db.Query("select sum(usercount) as usercount from ( select count(*) as usercount from category where name = 'construction' union all select count(*) as usercount from sub_category where name = 'construction' union all select count(*) as usercount from industry where name = 'construction' ) as usercounts;")
}
【问题讨论】:
-
好的,你正在检查它是否存在,用你的
SELECT。现在测试结果,如果不存在则INSERT -
"我想检查记录是否存在,如果不存在,那么我想将该记录插入数据库" MySQL 或多或少地通过
INSERT ... SELECT ... WHERE ...语法dev.mysql.com/doc/refman/5.7/en/insert-select.html 支持这一点跨度> -
我不认为你认为的那样;也不是 OP 的要求:“使用 INSERT ... SELECT,您可以从 SELECT 语句的结果中快速将许多行插入到表中”。 OP 想要
INSERT IF NOT EXIST,MySql 不支持 -
相信我@Mawg,
INSERT ... SELECT ... WHERE ...是可能的,我以前做过.. 只有 topicstarter 会分享这个表和示例数据,他已经有了一个 MySQL 唯一的答案。 -
如果你这么说(而且你有代表)。我生活和学习:-/ stackoverflow.com/questions/1361340/…?