请教一个查询的问题

[复制链接]
查看11 | 回复9 | 2008-4-7 19:47:40 | 显示全部楼层 |阅读模式
现在有两个表:customer和sales
customer表:
C_name
C_num
1公司
105001
1公司
105002
1公司
105003
2公司
105110
2公司
105111
2公司
105112
3公司
110100
3公司
110101
3公司
110102
sales表:
IDS_numG_name C_time
198 105002 笔记本 2007-1-1
264 105111 铅笔 2007-1-2
265 105003 铅笔 2007-1-2
现在想实现:
笔记本 S_num C_nameC_time
铅笔 S_num C_nameC_time
(这里S_num,C_name,C_time都是上面两个表中的值)
我是需要再建立一个表记录G_name 还是利用现有的两个表可以查询出来?如果可以查询出来,查询语句该怎么写
回复

使用道具 举报

千问 | 2008-4-7 19:47:40 | 显示全部楼层
应该再记录个表,或者在这两表上加个关联,没有关联不好查询。
回复

使用道具 举报

千问 | 2008-4-7 19:47:40 | 显示全部楼层
或者借助临时表吧。
回复

使用道具 举报

千问 | 2008-4-7 19:47:40 | 显示全部楼层
那我再建一个表,里面只加一个产品种类(G_name)列可以么?
回复

使用道具 举报

千问 | 2008-4-7 19:47:40 | 显示全部楼层
而且我的消费金额是按照产品种类来算的,也就是说每种产品都有一个百分比,然后消费了这种产品的总金额乘以这个百分比就算出了实际的利润,我是不是在新建的表中加入G_name产品种类列和一个费率列
回复

使用道具 举报

千问 | 2008-4-7 19:47:40 | 显示全部楼层
你要建个表能把这两个关联起来的啊,汗
只有GNAME的那有没有还不是一样的。
回复

使用道具 举报

千问 | 2008-4-7 19:47:40 | 显示全部楼层
关键是如果新建表的话这个表没有什么东西跟前面的customer表与sales表 有关系了哦
等于是我现在就是想以产品名称分类显示C_name客户名称、C_num号码、C_money消费金额和C_time消费时间
莫非我得建立customer表与sales表的关系了?
现在这两个表我都没有设主键外键具体我该怎么加这个关系呢?
回复

使用道具 举报

千问 | 2008-4-7 19:47:40 | 显示全部楼层
如果你要分成两张表来存储数据,而在select或alter 又同时需要用到这两张表。那么你就要让两张表有关联,不然会很麻烦的!
至少是速度上的慢~~~
回复

使用道具 举报

千问 | 2008-4-7 19:47:40 | 显示全部楼层
但主要还是要看你的两张表是做什么用的。才能做出一个比较合理的分类!
如果两张可以关联,那么就没必要作第三张表了。
你可以说一下你的使用意图!需要存储什么样的信息?对这些信息以后有什么样的要求?
回复

使用道具 举报

千问 | 2008-4-7 19:47:40 | 显示全部楼层
现在有的两张表:customer表和sales表
customer表结构:
C_name navarchar(50)记录客户名称
C_num nvarchar(11)记录客户购买的所有号码段
sales表结构:
ID
nvarchar(4) 数据源自带ID 非自成长
S_num
nvarchar(11)记录当天消费的号码
col01
nvarchar(2)
null
G_name nvarchar(20) 消费的产品名称
G_id
nvarchar(20) 登录网站ID号
C_moneynvarchar(5) 消费金额
C_ip
nvarchar(15) 消费者登录ip地址
C_time
smalldatetime消费时间
现在我就想能够查询出:
笔记本(产品名称)S_num(消费的号码)C_name(客户名)C_money(消费金额)C_time(消费时间)
铅笔(产品名称)S_num (消费的号码)C_name(客户名)C_money(消费金额)C_time(消费时间)
这样一个格式
而且产品名称还得对应一个费率
最后还得通过 某个客户消费了某种产品的总金额乘以这个费率算出真实的利润(一个客户可能消费多种产品)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行