假设我的表包含以下列
Roll_number numeric not null
Subject1 varchar(40) null
Subject2 varchar(40) null
. . .
Subject8 varchar(40) null
我需要使用SQL查询在这些subject1到8的所有主题中搜索一个主题。如果考虑到其中任何一个可能有NULL值,那么最好的查询是什么样的?
我写了:
select *
from students_data
where subject1="BIOLOGY" or subject2="BIOLOGY" . . . . or subject8="BIOLOGY"
但是我需要一个简单的查询,因为实际上我的表中有超过20个列。
查询语句:
select * from table1 where "BIOLOGY" in (subject1,subject2,subject3)
很有帮助,但如果我需要匹配主题中的子字符串(部分内容)呢,比如表格字段中的"BIO"?