婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 基于postgreSql 常用查詢小結

基于postgreSql 常用查詢小結

熱門標簽:電銷機器人能補救房產中介嗎 廣州電銷機器人公司招聘 400電話申請客服 濟南外呼網絡電話線路 江蘇400電話辦理官方 電話機器人怎么換人工座席 地圖標注要花多少錢 移動外呼系統模擬題 天津開發區地圖標注app

1. 日期格式轉化(參考)

select beg_time, end_time, extract(epoch from to_timestamp(end_time,'yyyy-mm-dd-HH24-MI-SS-US'))-extract(epoch from to_timestamp(beg_time,'yyyy-mm-dd-HH24-MI-SS-US')) from cdb_all_iu_data where beg_time > '2017-09-21' 

注:beg_time, end_time以TEXT形式存儲,求時間差時轉化為時間戳再相減得到結果(s)

2. select * from (中間結果) t

select count(*) from (
select chkid, count(*) from abc_table GROUP BY chkid) t

補充:自己寫的postgreSQL查詢語句

我就廢話不多說了,大家還是直接看代碼吧~

import psycopg2 
class PostgreConn():
  '''
  數據庫連接類
  '''
  def __init__(self, database, user, password, host, port):
    self.conn = psycopg2.connect(database=database, user=user, password=password, host=host, port=port)
    print('數據庫連接成功')
    self.cur = self.conn.cursor()
    self.rows = None
 
  def cur(self):
    return self.cur()
 
  def execute(self, sql, fetchone=0):
    self.cur.execute(sql)
    if fetchone:
      self.rows = self.cur.fetchone()
    else:
      self.rows = self.cur.fetchall()
    return self.rows
 
  def close(self):
    self.cur.close()
    self.conn.close()
    print('數據庫連接關閉') 
 
def select_sql(table, keys, conditions, isdistinct=0):
  '''
    生成select的sql語句
  @table,查詢記錄的表名
  @key,需要查詢的字段
  @conditions,插入的數據,字典
  @isdistinct,查詢的數據是否不重復
  '''
  if isdistinct:
    sql = 'SELECT distinct %s ' % ",".join(keys)
  else:
    sql = 'SELECT %s ' % ",".join(keys)
  sql += ' from %s ' % table
  if conditions:
    sql += ' WHERE %s ' % dict_str_and(conditions)
  return sql 
 
def dict_str_and(dictin):
  '''
  將字典變成,key='value' and key='value'的形式
  '''
  tmplist = []
  for k, v in dictin.items():
    tmp = "%s='%s'" % (str(k), str(v))
    tmplist.append(' ' + tmp + ' ')
  return ' and '.join(tmplist) 
 
def fSqlResult(r,key_list):
  '''
  :param r: 數據庫fetchall的結果
  :param key_list: 查詢字段的keys
  :return:
  format SQL Result 格式化數據庫查詢的結果,轉化成包含多個字典的列表格式,即((1,2),(3,4))->[{"key1":1,"key2":2},{"key1":3,"key2":4}]
  返回 @dict 查詢結果
  '''
  mlist=[]
  l=len(key_list)
  if r:
    for item in r:
      tmp={}
      for i in range(l):
        tmp[key_list[i]]=str(item[i])
      mlist.append(tmp)
  return mlist 
 
conn = PostgreConn('settle', 'admin', 'settle8', '123.57.285.89', '5432')
key_list = ['user_id']
sql = select_sql('st_user', key_list, {'phone': '138****'})
print(sql)
r = conn.execute(sql)
re = fSqlResult(r, key_list)
print(re)
conn.close()

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 解決postgresql 數字轉換成字符串前面會多出一個空格的問題
  • PostgreSQL 遠程連接配置操作
  • postgreSQL中的內連接和外連接實現操作
  • postgreSQL中的case用法說明
  • postgresql 查詢字符串中是否包含某字符的操作
  • postgresql 替換空格 換行和回車的操作

標簽:辛集 寶雞 榆林 海西 杭州 溫州 濮陽 昭通

巨人網絡通訊聲明:本文標題《基于postgreSql 常用查詢小結》,本文關鍵詞  基于,postgreSql,常用,查詢,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《基于postgreSql 常用查詢小結》相關的同類信息!
  • 本頁收集關于基于postgreSql 常用查詢小結的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 留坝县| 尼木县| 富蕴县| 吉隆县| 东丰县| 永和县| 景泰县| 道孚县| 连城县| 嵩明县| 巴塘县| 海盐县| 福建省| 合川市| 南召县| 通化市| 丹棱县| 柳林县| 中卫市| 朝阳县| 乐昌市| 芷江| 即墨市| 定日县| 微山县| 图木舒克市| 义乌市| 屏南县| 廊坊市| 离岛区| 灵寿县| 加查县| 上虞市| SHOW| 申扎县| 如皋市| 鄯善县| 松江区| 大冶市| 扎赉特旗| 金溪县|