十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
思路如下,分别将A与B,A与C进行关联,然后使用 union 进行连接,查询时,直接使用这个查询就可以了(可以建个视图,查询起来比较方便 ),如下:
目前创新互联已为上千家的企业提供了网站建设、域名、网页空间、成都网站托管、企业网站设计、米易网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
select d.id, d.name
from (select A.id, B.name
from A, B
where A.id = B.id
and A.type = '教师'
union
select A.id, C.name
from A, C
where A.id = C.id
and A.type = '教室') d
where d.id = 123
有问题请追问,希望可以帮到你
我的表结构如下:
create table students(id int auto_increment,
name varchar(10) not null DEFAULT '',
age int not null DEFAULT 0,
sex varchar(2) not null DEFAULT '',
studId varchar(18) not null DEFAULT '',
PRIMARY KEY (`id`));
触发器:
DELIMITER $$
CREATE TRIGGER `students_insert` BEFORE INSERT ON `students`
FOR EACH ROW
BEGIN
if mod(substring(new.studId,17,1),2)=0 then
set new.sex = '女';
else
set new.sex = '男';
end if;
END;
$$
DELIMITER ;
以上程序已测试通过,
另外友情提醒一下,在触发器中处理这个判断,效率不高,最好在程序中处理这部分逻辑.
存储过程啊。if status=1 or status=9 then {需要执行的语句} end if;
我想你的意思是判断后再
SELECT tmpDeptLst.*,tbl_department.* FROM tmpDeptLst ,tbl_department
where tmpDeptLst.id = tbl_department.ID and PARENT_ID is not null
后加个and tbl_department.STATUS = status 条件。那么就定义两个varchar变量,第一个比如是A是存
SELECT tmpDeptLst.*,tbl_department.* FROM tmpDeptLst ,tbl_department
where tmpDeptLst.id = tbl_department.ID and PARENT_ID is not null
第二就弄个全局变量或者其他的。
if status=1 or status=9 then
@B=concat(A,'and tbl_department.STATUS = status');
-- 执行sql
prepare create_sql from @B;
EXECUTE create_sql ;
DEALLOCATE prepare create_sql;
end if;
1、创建测试表,
create table test_person(id int, RMB int);
2、插入测试数据
insert into test_person values(1,180);
insert into test_person values(2,170);
insert into test_person values(3,290);
insert into test_person values(4,160);
insert into test_person values(5,299);
insert into test_person values(6,266);
insert into test_person values(7,155);
3、查询表中所有记录,select t.* from test_person t,
4、编写sql,汇总每个vip类型的用户数,
select vip_type, count(distinct id)
from (select case when RMB100 and RMB200 then 'VIP1' when RMB200 then 'VIP2' end as vip_type, id
from test_person) t
group by vip_type
mysql DELIMITER // mysql CREATE PROCEDURE TestIfElse - ( - p_val INT - ) - BEGIN - IF (p_val = 1) THEN - SELECT '1' AS A; - ELSEIF (p_val = 2) THEN - SELECT '2' AS A; - ELSE - SELECT 'other' AS A; - END IF; - END// Query OK, 0 rows affected (0.05 sec) 上面是一个最简单的 mysql 的 IF / ELSEIF 的例子了...
方法一:通过mysql建立索引,比如用户名不能重复,则将用户名字段建立Unique类型的索引
方法二:程序判断喽,selec一下是否存在