INSERT INTO article(`title`,`first_category_name`,`second_category_name`,`keyword`,`file_type`,`content`,`state`)
values (#{title},#{firstCategoryName},#{secondCategoryName},#{keyword},#{fileType},#{content},#{state})
select ar.`id`,ar.`title`,c1.`name` as `first_category_name`,c2.`name` as `second_category_name`,
ar.`keyword`,ar.`file_type`,ar.`content`,ar.`create_date_time`,ar.`update_date_time`,ar.`state`,
c1.level as `first_level`,c2.level as `second_level`,c1.`sort_num` as `first_sort_num`,c2.`sort_num` as `second_sort_num`,
ar.`keyword`,ar.`file_type`
FROM article ar
left join category c1
on
ar.first_category = c1.id and c1.level = 1
left join category c2
on
ar.second_category = c2.id and c2.level = 2
where
1 = 1
and ar.title like #{title}
and ar.first_category = #{firstCategory}
and ar.second_category = #{secondCategory}
and file_type = #{fileType}
and state = #{state}
select c.`name`
from article ar
left join category c
on c.id = ar.`first_category`
where c.level = 1 and ar.state = 1
group by c.name
order by c.sort_num ASC
select c.`name`
from article ar
left join category c
on ar.`second_category` = c.`id`
where
1=1
and ar.first_category = #{firstCategory}
and c.level = 2 and ar.state = 1
group by c.name
order by c.sort_num ASC
select ar.`id`,ar.`title`,c1.`name` as `first_category_name`,c2.`name` as `second_category_name`,
ar.`keyword`,ar.`file_type`,ar.`content`,ar.`create_date_time`,ar.`update_date_time`,ar.`state`,
c1.level as `first_level`,c2.level as `second_level`,c1.`sort_num` as `first_sort_num`,c2.`sort_num` as `second_sort_num`,
ar.`keyword`,ar.`file_type`
FROM article ar
left join category c1
on
ar.first_category = c1.id and c1.level = 1
left join category c2
on
ar.second_category = c2.id and c2.level = 2
where
1 = 1
and (ar.title like #{param} OR ar.keyword like #{param} or c1.name like #{param} or c2.name like #{param} )
and ar.first_category = #{firstCategory}
and ar.second_category = #{secondCategory}
and ar.state = 1