SELECT T1.a, T1.b, T2.c FROM T1 LEFT JOIN T2 ON T1.a = T2.a
DROP DATABASE IF EXISTS `test`; CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8 */; USE `test`;# # Table structure for table t1 #CREATE TABLE `t1` ( `a` int(11) NOT NULL auto_increment, `b` varchar(10) default NULL, PRIMARY KEY (`a`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;# # Dumping data for table t1 #INSERT INTO `t1` VALUES (1,'11'); INSERT INTO `t1` VALUES (2,'22'); INSERT INTO `t1` VALUES (3,'33');# # Table structure for table t2 #CREATE TABLE `t2` ( `a` int(11) NOT NULL auto_increment, `c` varchar(10) default NULL, PRIMARY KEY (`a`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;# # Dumping data for table t2 #INSERT INTO `t2` VALUES (1,'gg'); INSERT INTO `t2` VALUES (2,'hh');#应该能解决你的问题吧 select t1.a,t1.b,case when t2.c is null then '自己定义' else t2.c end from t1 left join t2 on t1.a=t2.a借宝地求助: http://community.csdn.net/Expert/topic/5565/5565142.xml?temp=2.009219E-02
T1.b,
T2.c
FROM T1
LEFT JOIN T2
ON T1.a = T2.a
DROP DATABASE IF EXISTS `test`;
CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8 */;
USE `test`;#
# Table structure for table t1
#CREATE TABLE `t1` (
`a` int(11) NOT NULL auto_increment,
`b` varchar(10) default NULL,
PRIMARY KEY (`a`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;#
# Dumping data for table t1
#INSERT INTO `t1` VALUES (1,'11');
INSERT INTO `t1` VALUES (2,'22');
INSERT INTO `t1` VALUES (3,'33');#
# Table structure for table t2
#CREATE TABLE `t2` (
`a` int(11) NOT NULL auto_increment,
`c` varchar(10) default NULL,
PRIMARY KEY (`a`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;#
# Dumping data for table t2
#INSERT INTO `t2` VALUES (1,'gg');
INSERT INTO `t2` VALUES (2,'hh');#应该能解决你的问题吧
select t1.a,t1.b,case when t2.c is null then '自己定义' else t2.c end from t1 left join t2 on t1.a=t2.a借宝地求助:
http://community.csdn.net/Expert/topic/5565/5565142.xml?temp=2.009219E-02