首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Sal select语句过滤结果

Sal select语句过滤结果
EN

Stack Overflow用户
提问于 2022-03-22 19:04:29
回答 2查看 34关注 0票数 0

我把表格连接在一起,但数据在设计上有一些重复。简化下面的示例

用户地址

User1 100主站

User1 999-Everyone St. .

User2 400榆树.

User2 999-Everyone St. .

User3 300松st.

User3 999-Everyone St. .

User4 999-Everyone St. .

我如何才能得到每个用户只有一次和一个地址得到首选地址(而不是一般999每个人。每个人都能得到)。

User1 100主站

User2 400榆树.

User3 300松st.

User4 999-Everyone St. .

EN

回答 2

Stack Overflow用户

发布于 2022-03-22 19:14:55

由于我不确定您的表是如何构建的,答案可能有点过于笼统,但我非常肯定,选择自己的值可以解决您的问题。

你会这样做:

代码语言:javascript
复制
SELECT DISTINCT USER.ID, STREET.STREET_NUMBER
FROM USER
  INNER JOIN --the rest of your code...

这样,当您使用distinct时,只有当用户的id不同时,它才会显示下一行。实际上,这将只显示每个用户的第一个地址行,这是您希望拥有的实际值,而不是同时显示默认行和新行。

票数 0
EN

Stack Overflow用户

发布于 2022-03-22 19:22:01

您可以像这样在Partition by中使用行号

代码语言:javascript
复制
Select userId, address from (
Select userId , address, row_number() over(partition by userId order by address) rw
From your_join_tables) t
Where t.rw=1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71577603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档