小妹请教两个表,表连接的写法。
A 表 有字段 id name age sex
B 表 有字段 id a_id name age sexA表存的数据是
1 张三 24 男
2 李四 25 男
3 王五 26 男
4 小六 27 女B表存是数据是
1 2 李四 25 男
2 4 小六 27 女我想通过一条SQL语句查出来的结果如下
id name age sex table_name
1  张三 24  男      A
2  李四 25  男      B
3  王五 26  男      A
4  小六 27  女      B
也就是说发现B表的a_id字段和A表的id字段值相同的情况下列出B表的记录。
不知道能实现不!请各位师哥代码明示。

解决方案 »

  1.   

    select a.*,if(isnull(b.a_id),'A','B') AS table_name  from a 
    left join b on a.id=b.a_id
      

  2.   

    1楼的师哥!我试用你的SQL语法!我发现虽然最后查出来的table_name显示的B表但是实际前面的id,name,age,sex里面的几个字段里的内容还是A表的数据!我想显示table_name是B的记录里的内容也是从B表里取,table_name是A的记录内容是从A表里取!不知道能做到不!
      

  3.   

    你做4个判断id,name,age,sex,如ISNULL(b.a_id),则取B表的4个字段,
    否则取A表的4个字段,代码参考上述