怎么把查询后没有的的字符填写成NULL

怎么把查询后没有的的字符填写成NULL

如何把查询后没有的的字符填写成NULL



T1

a           b

1           11

2           22

3           33

T2

a           c

1           gg

2           hh

联合查询后,表应该是这样,应该写这句SQL呢

a             b             c

1           11           ggg

2           22           hhh

3           33           NULL

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

怎么把查询后没有的的字符填写成NULL

相关文章:

你感兴趣的文章:

标签云: