31 lines
929 B
XML
31 lines
929 B
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
<mapper namespace="codeMerge">
|
|
|
|
<!--
|
|
columnName 컬럼과 company_code 컬럼을 함께 가진 public BASE TABLE 목록 조회
|
|
테이블명은 information_schema 검증값이므로 동적 SQL 사용 시 안전
|
|
-->
|
|
<select id="getTablesWithColumn" parameterType="map" resultType="map">
|
|
SELECT DISTINCT t.table_name
|
|
|
|
FROM information_schema.columns c
|
|
|
|
JOIN information_schema.tables t
|
|
ON c.table_name = t.table_name
|
|
|
|
WHERE c.column_name = #{column_name}
|
|
AND t.table_schema = 'public'
|
|
AND t.table_type = 'BASE TABLE'
|
|
AND EXISTS (
|
|
SELECT 1 FROM information_schema.columns c2
|
|
WHERE c2.table_name = t.table_name
|
|
AND c2.column_name = 'company_code'
|
|
)
|
|
|
|
ORDER BY t.table_name
|
|
</select>
|
|
|
|
</mapper>
|