SQL双表联查

INNER JOIN 连接两个数据表的用法:
SELECT * FROM 表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号

inner join(等值连接) 只返回两个表中联结字段相等的行 

//从t1表的全部字段和t2表中  READ_FLAG,和LOOK_FLAG字段进行展示 

SELECT 
  t1.*,
  t2.READ_FLAG,
  t2.LOOK_FLAG 

//从 表d_notice t1 和 表 d_notice_read_flag t2以条件   t1.row_id = t2.NOTICE_ID 进行查询
FROM
  d_notice t1 
  INNER JOIN d_notice_read_flag t2 
    ON t1.row_id = t2.NOTICE_ID 
WHERE t1.ALERT_FLAG = 0 
  AND t1.USE_FLAG = 1 
  AND t1.DEL_FLAG = 0 
  AND t2.READ_FLAG = 0 
  AND t2.LOOK_FLAG = 0 
  AND t2.USER_ACCOUNT = ? 
  AND t1.START_TIME < ? 
  AND t1.END_TIME > ? 
ORDER BY t1.TOP_FLAG DESC,
  t1.CREATE_TIME DESC 

List<Map<String,Object>> findMapList = this.baseDao.findMapList(sql, userAccount, nowTime, nowTime);

猜你喜欢

转载自my.oschina.net/u/3717819/blog/1817247