小编itz*_*nsn的帖子

MySQL Views OR vs IN子句

MySQL服务器版本:5.1.41在Ubuntu 10.04上

我在修改一些查询时想到了MySQL的行为,并且想知道它的原因.

基本上我正在创建一个视图.当我查询视图时,结果集是相同的但是,对于IN子句而言,读取的行数与子句不同OR.下面是一个简单的例子:

CREATE TABLE country ( 
    id_country int(11) NOT NULL AUTO_INCREMENT, 
    name varchar(50) NOT NULL, 
    PRIMARY KEY (id_country) 
) ENGINE=InnoDB; 

INSERT INTO country (name) VALUES ('A'), ('B'), ('C'), ('D'), ('E'), ('F'), ('G'), ('H'); 

CREATE TABLE status ( 
    id_status int(11) NOT NULL AUTO_INCREMENT, 
    id_country int(11) NOT NULL, 
    status tinyint(4) NOT NULL, 
    PRIMARY KEY (id_status) 
) ENGINE=InnoDB; 
ALTER TABLE status ADD INDEX ( id_country ); 
ALTER TABLE status ADD FOREIGN KEY ( id_country ) REFERENCES test.country …
Run Code Online (Sandbox Code Playgroud)

mysql views

5
推荐指数
1
解决办法
249
查看次数

标签 统计

mysql ×1

views ×1