相关疑难解决方法(0)

选择其他表中不存在的行

我有两个postgresql表:

table name     column names
-----------    ------------------------
login_log      ip | etc.
ip_location    ip | location | hostname | etc.
Run Code Online (Sandbox Code Playgroud)

我想得到每个login_log没有行的IP地址ip_location.
我尝试了这个查询,但它抛出了语法错误.

SELECT login_log.ip 
FROM login_log 
WHERE NOT EXIST (SELECT ip_location.ip
                 FROM ip_location
                 WHERE login_log.ip = ip_location.ip)
Run Code Online (Sandbox Code Playgroud)
ERROR: syntax error at or near "SELECT"
LINE 3: WHERE NOT EXIST (SELECT ip_location.ip`
Run Code Online (Sandbox Code Playgroud)

我也想知道这个查询(通过调整使其工作)是否是用于此目的的最佳性能查询.

sql postgresql null exists left-join

150
推荐指数
2
解决办法
18万
查看次数

插入多行时重复项会发生什么?

我正在运行一个python脚本,将大量数据插入到Postgres数据库中,我使用单个查询来执行多行插入:

INSERT INTO table (col1,col2) VALUES ('v1','v2'),('v3','v4') ... etc
Run Code Online (Sandbox Code Playgroud)

我想知道如果它碰到插入的重复键会发生什么.它会停止整个查询并抛出异常吗?或者它只是忽略该特定行的插入并继续前进?

sql postgresql exception upsert duplicates

5
推荐指数
1
解决办法
5185
查看次数

不等于连接查询

我想让所有未付款的男性顾客都没有参加任何计划

SELECT cr.id, cr.type FROM mydb.customer cr 
JOIN mydb.plan1 p1 on cr.id != p1.id 
JOIN mydb.plan2 p2 on cr.id != p2.id 
JOIN mydb.plan3 p3 on cr.id != p3.id 
WHERE cr.type = 'male'
Run Code Online (Sandbox Code Playgroud)

这个查询正确吗?

sql database postgresql

1
推荐指数
1
解决办法
7952
查看次数

标签 统计

postgresql ×3

sql ×3

database ×1

duplicates ×1

exception ×1

exists ×1

left-join ×1

null ×1

upsert ×1