首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从带有条件的多个地址中选择一个地址

问如何从带有条件的多个地址中选择一个地址
EN

Stack Overflow用户
提问于 2019-04-09 06:38:00
回答 2查看 251关注 0票数 0

我有这样的桌子:

代码语言:javascript
复制
CustomerID | Address  | Address Type
100000001  | addressA | Mailing Address
100000001  | addressB | Registered Address
100000001  | Null.    | Office Address

一个客户可以有多个地址。我只想选择一个有条件的地址:

  1. 如果Office地址不是null,那么我将从Office地址获得地址。如果Office地址为null,则转到2号。
  2. 检查注册地址是否为空,然后我将从注册地址获得地址。
EN

回答 2

Stack Overflow用户

发布于 2019-04-09 06:55:04

代码语言:javascript
复制
CREATE TABLE CUSTOMER (CUSTOMERID INT , ADDRESS VARCHAR(500) , ADDRESSTYPE VARCHAR(25));

INSERT INTO CUSTOMER VALUES (100000001,'ADDRESSA' ,'MAILING ADDRESS');
INSERT INTO CUSTOMER VALUES (100000001,'ADDRESSB',  'REGISTERED ADDRESS');
INSERT INTO CUSTOMER VALUES (100000001, NULL ,'OFFICE ADDRESS');

SELECT 
    ISNULL(
        (SELECT ADDRESS FROM CUSTOMER WHERE CUSTOMERID = 100000001 AND ADDRESSTYPE = 'OFFICE ADDRESS' ) ,
        (SELECT ADDRESS FROM CUSTOMER WHERE CUSTOMERID = 100000001 AND ADDRESSTYPE = 'REGISTERED ADDRESS' )
    ) 
票数 0
EN

Stack Overflow用户

发布于 2019-04-09 07:19:29

代码语言:javascript
复制
select * from customer 

select  max(customerID) customerID ,max(Address) Address ,max(Addresstype) Addresstype
from customer  
where address is not null
group by customerID

输出

​

​

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55586529

复制
相关文章

相似问题

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