select distinct(a.group_id) from jags_errorrecord a left join ucenter250.complat_group b on a.group_id = b.iid ;反选这条sql的数据
时间: 2024-02-24 19:58:36 浏览: 24
您可以使用以下 SQL 语句来反选这条 SQL 的数据:
```
SELECT DISTINCT(a.group_id)
FROM jags_errorrecord a
LEFT JOIN ucenter250.complat_group b ON a.group_id = b.iid
WHERE b.iid IS NULL;
```
在原始 SQL 语句的基础上,我们添加了一个 WHERE 子句,使用 IS NULL 来找出没有匹配的记录。具体地,我们在左连接的结果集中找出 b.iid 为 NULL 的记录,这些记录对应的 a.group_id 就是我们需要反选的数据。
相关问题
SELECT DISTINCT A.BEGIN_REPAIR_NO, A.PART_NO, A.CREATE_BY, B.EMPLOYEE_NAME AS CREATE_NAME, A.CREATE_TIME FROM TPMDATA.PICKING A LEFT JOIN TPMDATA.SAP_EMPLOYEE B ON A.CREATE_BY = B.EMPLOYEE_NO SELECT nvl(sum(A.CURRENT_QUANTITY),0) FROM TPMDATA.PICKING A LEFT JOIN TPMDATA.sys_part B ON A.PART_NO = B.PART_NO 将这俩条sql语句 合成一条
可以使用子查询将这两条 SQL 查询语句合并成一条:
SELECT DISTINCT
A.BEGIN_REPAIR_NO,
A.PART_NO,
A.CREATE_BY,
B.EMPLOYEE_NAME AS CREATE_NAME,
A.CREATE_TIME,
NVL((SELECT SUM(CURRENT_QUANTITY)
FROM TPMDATA.PICKING
LEFT JOIN TPMDATA.sys_part ON TPMDATA.PICKING.PART_NO = TPMDATA.sys_part.PART_NO
WHERE TPMDATA.PICKING.BEGIN_REPAIR_NO = A.BEGIN_REPAIR_NO AND TPMDATA.PICKING.PART_NO = A.PART_NO), 0) AS CURRENT_QUANTITY
FROM
TPMDATA.PICKING A
LEFT JOIN TPMDATA.SAP_EMPLOYEE B ON A.CREATE_BY = B.EMPLOYEE_NO;
这条语句将原本要查询的 SUM(CURRENT_QUANTITY) 作为子查询嵌入到了主查询中,并且增加了 WHERE 子句,以便查询对应的 BEGIN_REPAIR_NO 和 PART_NO。
select a.*,count(distinct b.id) as 'topicNum',count(distinct c.id) as 'groupNum' from resource_instance_rocketmq a left join resource_rocketmq_topic b on a.instance_id = b.instance_id left join resource_rocketmq_group c on a.instance_id = c.instance_id where a.instance_name like '%gaotu%' group by a.instance_id order by topicNum asc limit 3 offset 2
以下是将该 SQL 查询语句转换为 Golang 代码的示例:
```go
package main
import (
"context"
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
)
func main() {
db, err := sql.Open("mysql", "user:password@tcp(host:port)/database")
if err != nil {
panic(err.Error())
}
defer db.Close()
query := `
SELECT a.*, COUNT(DISTINCT b.id) AS topicNum, COUNT(DISTINCT c.id) AS groupNum
FROM resource_instance_rocketmq a
LEFT JOIN resource_rocketmq_topic b ON a.instance_id = b.instance_id
LEFT JOIN resource_rocketmq_group c ON a.instance_id = c.instance_id
WHERE a.instance_name LIKE ?
GROUP BY a.instance_id
ORDER BY topicNum ASC
LIMIT 3 OFFSET 2
`
rows, err := db.QueryContext(context.Background(), query, "%gaotu%")
if err != nil {
panic(err.Error())
}
defer rows.Close()
for rows.Next() {
// 读取查询结果,并进行处理
}
}
```
请将代码中的 `user`、`password`、`host`、`port`、`database` 分别替换为您的 MySQL 数据库的实际连接信息。同时,您需要安装 `go-sql-driver/mysql` 包以便 Golang 代码连接 MySQL 数据库。请注意,为了防止 SQL 注入攻击,我们使用了 `?` 占位符,并将查询条件 `"gaotu"` 作为参数传入 `QueryContext` 方法中。