Home >Database >Mysql Tutorial >几个测试SQL,测试SQL处理字符串_MySQL

几个测试SQL,测试SQL处理字符串_MySQL

WBOY
WBOYOriginal
2016-06-01 13:56:17979browse

drop table if exists category;
create table if not exists category
(
c_Id bigint not null,
c_name varchar(255) default '',
c_type int default 1,
primary key (c_ID)
);

drop table if exists files;
create table if not exists files
(
f_Id bigint not null,
c_id bigint not null,
f_name varchar(255) default '',
f_mids text,
primary key (f_ID)
);

drop table if exists members;
create table if not exists members
(
m_Id bigint not null,
m_name varchar(255) default '',
primary key (m_ID)
);

insert into category(c_id,c_name,c_type) values (1,'public',1);
insert into category(c_id,c_name,c_type) values (2,'private',2);
insert into category(c_id,c_name,c_type) values (3,'upload',3);
insert into category(c_id,c_name,c_type) values (4,'member001',4);
insert into category(c_id,c_name,c_type) values (5,'member002',4);

insert into files(f_id,c_id,f_name,f_mids) values (1,1,'F_public','1,2');
insert into files(f_id,c_id,f_name,f_mids) values (2,1,'F_public','1');
insert into files(f_id,c_id,f_name,f_mids) values (3,1,'F_public','3,4');

insert into files(f_id,c_id,f_name,f_mids) values (4,2,'F_private','1,2');
insert into files(f_id,c_id,f_name,f_mids) values (5,2,'F_private','1');
insert into files(f_id,c_id,f_name,f_mids) values (6,2,'F_private','3,4');


insert into files(f_id,c_id,f_name,f_mids) values (7,3,'F_upload','1,2');
insert into files(f_id,c_id,f_name,f_mids) values (8,3,'F_upload','1');
insert into files(f_id,c_id,f_name,f_mids) values (9,3,'F_upload','3,4');

insert into files(f_id,c_id,f_name,f_mids) values (10,4,'F_upload','1,2');
insert into files(f_id,c_id,f_name,f_mids) values (11,4,'F_upload','1');
insert into files(f_id,c_id,f_name,f_mids) values (12,4,'F_upload','3,4');

insert into files(f_id,c_id,f_name,f_mids) values (13,5,'F_upload','1,2');
insert into files(f_id,c_id,f_name,f_mids) values (14,5,'F_upload','1');
insert into files(f_id,c_id,f_name,f_mids) values (15,5,'F_upload','3,4');

#此SQL数据就为多目录及其目录下面的文件列表
select * from category as A,files as B,members as C Where A.c_id=B.c_id order by B.c_type,B.c_id;

insert into members (m_id,m_name) values (1,'A');
insert into members (m_id,m_name) values (2,'B');
insert into members (m_id,m_name) values (3,'C');
insert into members (m_id,m_name) values (4,'D');

SELECT * FROM members;

#---取得A(id=1)会员有权限的文件列表
#INSTR(concat(',',f_mids ,','),',1,') >0 表示此文件关联的Member字段里面存在此ID,
#即表示会员ID为1会员可以查看此文件

SELECT LOCATE(',1,', ',1,2,3,');
Select f_id,f_name,f_mids,
INSTR(concat(',',f_mids ,','),',1,') AS checked
From files
where INSTR(concat(',',f_mids ,','),',1,')>0;

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn