Python中两List的Sql左连接实现

内联接比较容易,之前做过,用两List的关键字进行if过滤即可;左(右)连接稍微麻烦一些,但稍思考一下,还是可以满足条件的。/Users/nisj/PycharmProjects/BiDataProc/Demand/hadoopStat/SqlLeftJoin.py#-*-coding=utf-8-*-importsysreload(sys)sys.setdefaultenc

大家好,又见面了,我是你们的朋友全栈君。内联接比较容易,之前做过,用两List的关键字进行if过滤即可;左(右)连接稍微麻烦一些,但稍思考一下,还是可以满足条件的。


/Users/nisj/PycharmProjects/BiDataProc/Demand/hadoopStat/SqlLeftJoin.py

# -*- coding=utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf8')

listA = [[1, '加内特'], [2, '基德'], [3, '邓肯'], [4, '奥尼尔'], [5, '麦蒂']]
listB = [[1, '科比'], [2, '韦德'], [3, '诺威司机']]
for aa in listA:
    bbIndex=[]
    for bb in listB:
        bbIndex.append(bb[0])
        if aa[0] == bb[0]:
            print aa[0], bb[0], aa[1], bb[1]
    if aa[0] not in bbIndex:
        print aa[0], None, aa[1], 'NULL'

查询结果:

/usr/bin/python /Users/nisj/PycharmProjects/BiDataProc/Demand/hadoopStat/SqlLeftJoin.py
1 1 加内特 科比
2 2 基德 韦德
3 3 邓肯 诺威司机
4 None 奥尼尔 NULL
5 None 麦蒂 NULL

Process finished with exit code 0

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128361.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Modebus – usb转RS485(芯片)串口驱动

    Modebus – usb转RS485(芯片)串口驱动usb转485通信,相当于电脑加了485芯片,有了485芯片就具备了通信的功能

    2022年5月4日
  • 面试被问selenium自动化模型,你了解多少?

    面试被问selenium自动化模型,你了解多少?

    2021年5月24日
  • vdbench安装及使用[通俗易懂]

    vdbench安装及使用[通俗易懂]一、 vdbench简介vdbench是一个I/O工作负载生成器,用于验证数据完整性和度量直接附加和网络连接的存储的性能。它是一个免费的工具,容易使用,而且常常用于测试和基准测试。可以使用vdbench测试磁盘和文件系统的读写性能。注:此软件的带宽及字节结算单位均为1024进制。二、 vdbench安装环境准备Vdbench使用需要有java环境,centos直接yuminstalljre即可,windows主机上则需要安装jre,并添加到环境变量中。程序测试环境配置好后,直接在

    2022年5月19日
  • mongodb数据库去重命名_数据库数据去重语句

    mongodb数据库去重命名_数据库数据去重语句  最近写爬虫的时候遇到了一个问题,爬一个专利网站,主要工作流是先把列表页下所有的专利包括专利号、专利名称、URL放到数据库的一个文档info中,再抽取info中的URL进行爬取详情页,爬取列表页的信息做了一个去重,爬一个就在数据库里查一个。。效率就不提了(另一种我能想到的方法是先用线程池爬取一遍,把单个字典放入一个列表中,再采用set去重,但是线程池似乎没法返回子线程的值?),之后在详情页爬取工…

    2022年9月30日
  • JVM调优工具总结(jConsole jmc jvisualvm)

    JVM调优工具总结(jConsole jmc jvisualvm)一、环境准备,centos7服务器一台,安装jdk1.8,一个可运行java的jar包,最好是有个服务器运维工具,我用的是宝塔面板,主要是用来开放端口,当然你是用命令开放也可以的。本地win10上安装jdk1.8二、启动1.将jar包放在linux服务器上,我的在/usr/java/jar目录下,ay.jarhostname远程主机地址port:10991这个不用改,默认就…

    2022年5月31日
  • MySQL 日期和时间戳的转换 | 以及DATE_FORMAT()用法

    MySQL 日期和时间戳的转换 | 以及DATE_FORMAT()用法一、MySQL日期和时间戳的转换1.日期转时间戳selectUNIX_TIMESTAMP(‘2018-12-2512:25:00’);结果:15457119002.时间戳转日期:FROM_UNIXTIME(unix_timestamp)–unix_timestamp为时间戳selectFROM_UNIXTIME(1545711900);结果:2018-12-…

    2022年6月15日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号