CREATE VIEW 简单问题!解决马上结贴
CREATE VIEW vRULE_INFO AS
SELECT E.CARID, E.RULE_ID, E.Status, P.RULEID
FROM CAR_RULE E, RULE_INFO P
WHERE (P.RULEID = E.RULE_ID)
AND (E.Status=1)
OR (E.Status=3)
SELECT * FROM vRULE_INFO WHERE CarId = 4用这句执行上面的视图 得到下面子查询相同结果怎么改视图啊 谢谢 解决马上结贴
SELECT * FROM RULE_INFO AS P WHERE RULEID IN(SELECT RULE_ID FROM CAR_RULE WHERE CarId = 4 AND Status=1 or Status=3)
[解决办法]
修改视图用alter
ALTER VIEW vRULE_INFO AS
SELECT * FROM RULE_INFO AS P WHERE RULEID IN(SELECT RULE_ID FROM CAR_RULE WHERE CarId = 4 AND Status=1 or Status=3)
[解决办法]
alter
[解决办法]
你有看懂主的意思
按他的意思,是要修改後,通行SELECT * FROM vRULE_INFO WHERE CarId = 4得到SELECT * FROM RULE_INFO AS P WHERE RULEID IN(SELECT RULE_ID FROM CAR_RULE WHERE CarId = 4 AND Status=1 or Status=3)一的果
但是有一
子查的果中的列是RULE_INFO表的所有列,那如果要通也得到相同的果,的列中必包含CarId,子查中只能分析出CarId列於表CAR_RULE,但在不在RULE_INFO表中就不知道了