如何使用具有至少条件的数据库中的两个表获取结果

时间:2012-08-30 06:04:32

标签: mysql oracle

在mysql数据库中有两个表,包含table1和table2,

 table1
         id      marks      hodname
         1       10%         abc
         2       20%         tec
         3       50%         med
         4       60%         abc
         5       70%         tec
 table2
         uid            hodname
         1                abc
         2                tec
         3                med

我想获取带有标记的hodname,但条件是如果任何hod标记低于30%不应该在结果中。如果他在30%以下的标记上有替换,那么我只想要超过30%的结果。然后不考虑结果。请帮我解决mysql查询。
结果应该是

 table2
         marks            hodname
         50%                med

1 个答案:

答案 0 :(得分:1)

select table1.marks, table2.hodname
from table2 
inner join table1 on table1.id = table2.uid
where marks > 30

或者您的marks是带有百分号的字符串:

select table1.marks, table2.hodname
from table2 
inner join table1 on table1.id = table2.uid
where replace(marks,'%','')*1 > 30