我有一个包含3列PrjId,prjname和station的表。 这是我的表格示例:
PrjId prjname station
1 test1 s1
1 test1 s2
1 test1 s3
我想将project_detail表中的项目提取到下拉列表中。 这是我的SQL查询
select * from project_detail where prjname <> '' and PrjId is not null;
问题是,而不是一个test1项目,所有3个test1都显示在下拉列表中。我知道我必须提出一些条件,但我不明白该怎么做。皮斯帮助。
答案 0 :(得分:2)
select Distinct prjname
from project_detail where prjname <> '' and PrjId is not null;
答案 1 :(得分:0)
您的要求适用于DISTINCT关键字
select DISTINCT prjname
from project_detail
where prjname <> '' and PrjId is not null;
这将为您提供表格中唯一prjname的列表。
然而,在该表中似乎有些不太正确。
如果您想描述项目和站点之间的关系,其中项目在许多站点中存在,并且站点可能有许多项目,那么更正确的方法可以是三个相关表格,一个用于项目,一个用于站点和一个项目与车站之间的关系
Project_Detail
---------------
idproj
prjname
....other specific project attributes
Station_Detail
----------------
idstation
stname
....oter specific station attributes
Project_Station
----------------
idprj
idstation
....other specific relationship attributes
....like for example dateofinstall,active etc...
答案 2 :(得分:0)
select Distinct PrjId, prjname from project_detail where prjname <> '' and PrjId is not null;
它可以为你工作。