顯示具有 MySQL 標籤的文章。 顯示所有文章
顯示具有 MySQL 標籤的文章。 顯示所有文章

2012年6月18日 星期一

MySQL MRG_MYISAM

MGR_MYISAM只適用於相同結構的table,即將所有已拆開的表合併
照以下順序,可以發現在merge table裡會同步t1, t2的insert, update, delete。
但於merge裡只能有select, update及delete的操作,不支援insert。
1
CREATE TABLE IF NOT EXISTS `t1` (
 `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
 `message` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;
2
INSERT INTO `t1` (`id`, `message`) VALUES
(1, 't1的第一筆'),
(2, 't1的第二筆');
3
CREATE TABLE IF NOT EXISTS `t2` (
 `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
 `message` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;
4
CREATE TABLE IF NOT EXISTS `merge` (
 `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
 `message` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=MRG_MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci
UNION=(`t1`,`t2`);
5
INSERT INTO `t2` (`id`, `message`) VALUES
(1, 't2的第一筆');

2010年11月24日 星期三

NOT LIKE '%string%' OR column IS NULL

如果table的column欄位某一筆record值為Null,且要下SQL call出該欄位不包含關鍵字'string',則SQL如下:
┌────┐
│column│
├────┤
│   Null  │
└────┘


select * from table where column not like '%string%' or column is null