首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >依赖于一个连接的表

依赖于一个连接的表
EN

Stack Overflow用户
提问于 2012-04-02 12:29:31
回答 2查看 78关注 0票数 0

我有两个表(甲骨文):(我在列名前用星星标记了主键)

Table1列如下:

代码语言:javascript
复制
 \*date,
代码语言:javascript
复制
 \*code,
代码语言:javascript
复制
 \*symbol,
代码语言:javascript
复制
 price,
代码语言:javascript
复制
 weight  

Table2列如下:

代码语言:javascript
复制
 \*descriptionID
代码语言:javascript
复制
 code
代码语言:javascript
复制
 symbol
代码语言:javascript
复制
 date
代码语言:javascript
复制
 description

我需要通过查询找到以下信息,

对于特定日期的给定代码和符号,是否有任何描述。

例如:表1中代码= "AA“和符号="TEST”,表1中的=>至少有一行类似于ID=,代码="AA",符号=“测试”,日期= 2012-4-1在表2中。

我尝试使用以下查询:

代码语言:javascript
复制
select * from Table1 t1 INNER JOIN
Table2 t2
on  t1.code = t2.code and t1.symbol = t2.symbol and 
TO_CHAR(t1.date, 'YYYY/MM/DD')  = TO_CHAR(t1.date, 'YYYY/MM/DD')

但它并没有给我这样的输出:

代码= AA,符号=测试,日期为2012-4-1 =>描述计数= 10

代码= AA,符号=测试,日期为2012-4-2 =>描述计数=5

代码= BB,符号= HELO,日期为2012-4-1 =>描述计数= 20

有人能建议我一个能实现上述输出的查询吗?

EN

回答 2

Stack Overflow用户

发布于 2012-04-02 12:49:24

我不明白你为什么要加入:

代码语言:javascript
复制
SELECT count(*)
FROM Table2 
WHERE code='AA'
AND symbol = 'TEST'
AND date = to_date('2012-04-01', 'yyyy-mm-dd')

更新:(在阅读您的评论后)

我还是不明白你为什么要加入。您需要来自table1的数据吗?

无论如何,如果您想要所有(代码,符号,日期)的计数,那么为什么不分组呢?

至于日期,最好使用trunc去除时间部分。

所以:

代码语言:javascript
复制
SELECT code, symbol, date, count(*)
FROM Table2
GROUP BY code, symbol, date
票数 1
EN

Stack Overflow用户

发布于 2016-03-29 08:20:19

Trunc()方法接受字符串\ DATE输入,并创建一个以这种格式表示的日期输出:"DD\MM\YYYY“。所以它应该能做你想做的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9976452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档