sql多表连接 查询 与删除

如题1:有三个表分别为客户、订单、订单时间表,订单表UID与客户表UID关联,订单时间表DID与订单DID字段关联,要写一条是SQL语句查询出超过三次订单的客户姓名,订单... 如题 1:有三个表分别为 客户、订单、订单时间表,订单表UID与客户 表UID关联,订单时间表DID与订单DID字段关联,要写一条是SQL语句 查询出 超过三次订单的客户姓名,订单号与时间

题2:
   所有表中删除 包含 张三 的字段及关联字段
展开
 我来答
匿名用户
2012-10-26
展开全部
1:
SELECT
客户姓名
订单号
时间
FROM
订单表
JOIN 客户表
ON ( 订单表.UID = 客户表.UID)
JOIN
订单时间表
ON ( 订单表.DID = 订单时间表.DID)
WHERE
( SELECT COUNT(*) FROM 订单表 d WHERE d.UID = 客户表.UID ) > 3

2:
-- 先删除 订单时间表
DELETE
订单时间表
WHERE
DID IN (
SELECT DID FROM
订单表
JOIN 客户表
ON ( 订单表.UID = 客户表.UID)
WHERE
客户姓名 = '张三'
);

-- 后删除 订单表.
DELETE
订单表
WHERE
UID IN ( SELECT UID FROM 客户表 WHERE 客户姓名 = '张三');

-- 最后删除 客户表
DELETE
客户表
WHERE
客户姓名 = '张三';
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式