PGSQL语句:多条数据,根据某一相同值字段,获取一条数据

问题:表关联查询,但是我只需要其中任意一条数据即可

在这里插入图片描述

分组

SELECT
		*,
		ROW_NUMBER ( ) OVER ( PARTITION BY crm_serve_repair.ID ORDER BY crm_serve_repair.ID ) AS group_idx 
	FROM
		crm_serve_repair
		LEFT JOIN crm_repair_site ON crm_serve_repair.ID = crm_repair_site.
		ID LEFT JOIN crm_site ON crm_repair_site.site_id = crm_site.
		ID LEFT JOIN crm_repair_customer ON crm_serve_repair.ID = crm_repair_customer.
		ID LEFT JOIN company_info ON crm_repair_customer.customer_id = company_info.company_key 
	WHERE
		company_info.company_name LIKE'%临沂中石油昆仑燃气有限公司%' 

效果:
在这里插入图片描述

最后

SELECT
	s.* 
FROM
	(
	SELECT
		*,
		ROW_NUMBER ( ) OVER ( PARTITION BY crm_serve_repair.ID ORDER BY crm_serve_repair.ID ) AS group_idx 
	FROM
		crm_serve_repair
		LEFT JOIN crm_repair_site ON crm_serve_repair.ID = crm_repair_site.
		ID LEFT JOIN crm_site ON crm_repair_site.site_id = crm_site.
		ID LEFT JOIN crm_repair_customer ON crm_serve_repair.ID = crm_repair_customer.
		ID LEFT JOIN company_info ON crm_repair_customer.customer_id = company_info.company_key 
	WHERE
		company_info.company_name LIKE'%临沂中石油昆仑燃气有限公司%' 
	) s 
WHERE
	s.group_idx = 1

效果图:
在这里插入图片描述

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 如果你想在 PostgreSQL 中查找某一列非空的数据,可以使用以下 SQL 语句: ```sql SELECT * FROM table_name WHERE column_name IS NOT NULL; ``` 其中,`table_name` 是你要查询的表名,`column_name` 是你要查询的列名。这条 SQL 语句将返回表中该列非空的所有数据行。如果你只想返回该列的某些特定,你可以在 `WHERE` 子句中添加其他限制条件。 例如,如果你要查找表 `users` 中用户名(`username`)不为空的用户: ```sql SELECT * FROM users WHERE username IS NOT NULL; ``` 这条 SQL 语句将返回表 `users` 中所有用户名不为空的用户数据行。 ### 回答2: 在 PostgreSQL 中,可以使用 IS NOT NULL 子句来查找某一字段非空的数据。 语法如下: SELECT * FROM 表名 WHERE 字段名 IS NOT NULL; 其中,表名为要查询的表名,字段名为要查询的字段名。 例如,假设有一个名为 students 的表,其中有一个字段为 name,我们要查找 name 字段非空的数据,可以使用以下语句: SELECT * FROM students WHERE name IS NOT NULL; 这样就可以查询到 name 字段非空的数据,并将结果返回。 注意,上述语句中的 * 号表示返回所有字段数据,如果只想返回特定字段数据,可以将 * 替换为字段名。例如,如果只想返回 name 和 age 字段数据,可以使用以下语句: SELECT name, age FROM students WHERE name IS NOT NULL; 这样就只会返回 name 字段非空的数据中的 name 和 age 两个字段。 ### 回答3: 在pgsql中,可以使用IS NOT NULL子句来查找某一字段非空的数据。 语法如下: ```sql SELECT * FROM 表名 WHERE 字段名 IS NOT NULL; ``` 其中,表名是要查询的表的名称,字段名是要查询的字段的名称。 例如,假设我们有一个名为employee的表,其中包含id、name和age字段,我们要查询name字段非空的数据,可以使用以下pgsql语句: ```sql SELECT * FROM employee WHERE name IS NOT NULL; ``` 该语句将返回employee表中name字段非空的所有数据记录。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值