您可以打开与Outlook的连接并通过某些文件夹中的电子邮件进行查询吗?我试图连接到不在我本地计算机上的电子邮件帐户,因此我可以每天计算所有具有特定主题的电子邮件。最好的方法是什么?
答案 0 :(得分:0)
您可以使用Python运行SQL over Outlook
您可以连接到特定文件夹并从中下载所有电子邮件。
然后您有几种选择:
for
循环计数电子邮件我正在寻找一封电子邮件中的特定信息(经过的时间):
Target: Snowflake - DY_Position_TD
Started On: 2019-07-24 12:00:20
Ended On: 2019-07-24 13:12:18
Records Added: 4,180,659
SELECT tname, asodt, max( Cast (( JulianDay(ended_on) - JulianDay(started_on)) * 24 * 60 As Integer)) diff
from stats
group by 1, 2
order by 1 desc,2 desc
C:\temp\Python37-32>python max_elapsed.py
DY_Position_TD, 2019-07-23 71
DY_Position_TD, 2019-07-22 67
DY_Position_TD, 2019-07-19 79
DY_Position_SD, 2019-07-23 6
DY_Position_SD, 2019-07-22 6
DY_Position_SD, 2019-07-19 6
DY_FinancingPosition, 2019-07-23 16
DY_FinancingPosition, 2019-07-22 15
DY_FinancingPosition, 2019-07-19 15
答案 1 :(得分:0)
可以通过在 Microsoft SQL Server 数据容器和正在运行的 Outlook 实例 (available tables) 之间进行读/写来使用 Invantive SQL。免责声明:我从事 Invantive SQL 的工作。
示例查询:
create or replace table contacts@sqlserver
as
select *
from contacts@outlook
记得先启动 Outlook 并确保所需的商店在 Outlook 配置文件中可用。
对于邮件,使用类似:
select *
from mails@outlook
where subject like '%my hot topic%'
可以通过提供文件夹ID或商店ID作为表函数参数来优化查询:
select *
from mails(folderEntryId => VALUE, storeEntryId => VALUE)@outlook
值可以在stores@outlook
中找到,例如:
select mal.subject
from stores@outlook ste
join mails@outlook(storeEntryId => ste.storeid) mal
where ste.displayname = 'Camera'
相反的方向也是可能的,例如使用 insert
或 update
在 Outlook 中插入或更新邮件。