在单个 table 上合并 2 sql 语句
combine 2 sql statement on single table
我 table 有这些字段
table_id name tablename parenttable hierarchy
1 Staff staff 1 10
2 Student student 2 20
3 Intern intern 3 30
4 StaffCon contract 1 11
5 Staff Dep dependant 1 12
我想根据上述 table 合并 2 sql 个语句。
我在 2 条语句中得到 'tablename' 的值。
query 1 : result1 =select table_id from A Where tablename='staff'
query2 : result2 = select table_id from A where parenttable_id =result1 && tablename='dependant'
试试这个
SELECT table_id FROM A WHERE parenttable_id IN (
SELECT table_id FROM A WHERE tablename = 'staff'
) AND tablename = 'dependant'
或者用上面的table结构
SELECT table_id FROM A WHERE parenttable IN (
SELECT table_id FROM A WHERE name = 'staff'
) AND name = 'dependant'
这个也适合我..
SELECT
c2.table_id
FROM
A c1
INNER JOIN
A c2 ON c1.table_id = c2.parenttable
AND c1.tablename ='student' AND c2.tablename = 'dependant'
我 table 有这些字段
table_id name tablename parenttable hierarchy
1 Staff staff 1 10
2 Student student 2 20
3 Intern intern 3 30
4 StaffCon contract 1 11
5 Staff Dep dependant 1 12
我想根据上述 table 合并 2 sql 个语句。 我在 2 条语句中得到 'tablename' 的值。
query 1 : result1 =select table_id from A Where tablename='staff'
query2 : result2 = select table_id from A where parenttable_id =result1 && tablename='dependant'
试试这个
SELECT table_id FROM A WHERE parenttable_id IN (
SELECT table_id FROM A WHERE tablename = 'staff'
) AND tablename = 'dependant'
或者用上面的table结构
SELECT table_id FROM A WHERE parenttable IN (
SELECT table_id FROM A WHERE name = 'staff'
) AND name = 'dependant'
这个也适合我..
SELECT
c2.table_id
FROM
A c1
INNER JOIN
A c2 ON c1.table_id = c2.parenttable
AND c1.tablename ='student' AND c2.tablename = 'dependant'