sql 多行多个条件筛选怎么写?

id aid val1 2 12 2 21 3 3需要用 sql 求出 id 为 1 时 val 为 1 且 id 为 2 时 val 为 2的 aid
2025-01-21 01:06:11
推荐回答(2个)
回答1:

1、创建测试表,create table test_con_x(company_name varchar(200), remark varchar2(200));

2、插入测试数据,

insert into test_con_x values('中心学校','学校');

insert into test_con_x values('北京银行','银行');

insert into test_con_x values('人民保险','保险');

insert into test_con_x values('金融公司','金融');

insert into test_con_x values('无所谓','XX');

3、查询表中所有数据,select t.*, rowid from test_con_x t;

4、编写sql,根据指定条件查找所需数据,

select t.*, rowid from test_con_x t 

 where regexp_like(company_name,'学校|银行|保险|金融')

可以看到只有四条所需记录,

回答2:

select aid from table_name where (id=1 and val=1 ) or (id = 2 and val=2);