mysql - 选择查询中有特定的单词记录

标签 mysql

我有学生和费用表。我想加入这两个表

学生:

student_id      dd_date
  20          2015-12-25

费用:

  fee_id     student_id     particulars             due_date

    1           20          Register fee           2015-10-25
    2           20          Late fee               2015-09-28
    3           20          Late Register fee      2015-12-26
    4           20          Application fee        2015-12-28

这里我不想显示 dd_date > due_date 的记录,仅包含迟到的单词记录。 我想要这样的输出

  student_id    fee_id     Particulars       dd_date       due_date

      20          1        Register fee      2015-12-25    2015-10-25
      20          2         Late fee         2015-12-25    2015-09-28
      20          3        Application fee   2015-12-25    2015-12-28

我正在写这样的查询

SELECT * 
FROM students S,Fees F 
WHERE F.student_id = S.student_id 
  AND F.particulars  LIKE  '%Late%' 
  AND S.dd_date >F.due_date

但它仅显示特定日期,仅收取滞纳金。但我想要所有记录,但日期查询仅针对“迟到”字记录执行

谁能帮忙

最佳答案

这符合你的要求吗

SELECT * 
FROM students S,Fees F 
WHERE F.student_id = S.student_id 
  AND NOT (F.particulars  LIKE  '%Late%' 
  AND S.dd_date < F.due_date)

关于mysql - 选择查询中有特定的单词记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32945656/

相关文章:

mysql - 恢复 MySQL 数据库

mysql - INNER JOIN + IN 条件不起作用

mysql - 如果存在另一列,则快速增加一列的方法?

mysql - 是否可以在 mysql 中创建事务合并表?

mysql - Liquibase 生成不同的 UUID,尽管 uuid() 在 <property> 中调用了一次

mysql查询: SELECT DISTINCT column1, GROUP BY column2

java - 在 JAVA 中使用 session 用户的 MYSQL 查询

如果外键不存在,MySql 过程插入

php - 将当前日期存储在数据库中

php - php mysql 中的分页