分类: ai

  • 常用人工智能网站链接

    百度文心一言

    DeepSeek

    阿里通义千问

    腾讯元宝

    MiniMax

    字节豆包

    Kimi

    智谱清言

    万知

    阶跃AI

    OpenAI ChatGPT

    Google Gemini

    Claude

    <a href="https://yiyan.baidu.com" target="_blank">百度文心一言</a>
    <a href="https://chat.deepseek.com/" target="_blank">DeepSeek</a>
    <a href="https://www.tongyi.com/" target="_blank">阿里通义千问</a>
    <a href="https://yuanbao.tencent.com" target="_blank">腾讯元宝</a>
    <a href="https://chat.minimaxi.com/" target="_blank">MiniMax</a>
    <a href="https://doubao.com/chat/" target="_blank">字节豆包</a>
    <a href="https://www.kimi.com/" target="_blank">月之暗面</a>
    <a href="https://chatglm.cn/" target="_blank">智谱清言</a>
    <a href="https://www.wanzhi.com" target="_blank">万知</a>
    <a href="https://www.stepfun.com/" target="_blank">阶跃AI</a>
    <a href="https://www.chatgpt.com" target="_blank">OpenAI ChatGPT</a>
    <a href="https://gemini.google.com/app" target="_blank">Google Gemini</a>
    <a href="https://Claude.ai" target="_blank">Claude</a>
  • 使用 chatGPT 生成 Knex.js 代码

    Knex.js 是一个SQL语句构建器,

    在已知 SQL 的情况下,可以使用 chatGPT,来反向生成 Knex.js 代码。

    假设有如下的场景:

    通过监控,日志等系统获取到SQL,

    然后使用 chatGPT 生成对应的 Knex.js 代码,

    如果这个SQL是本身用 Knex.js 生成的,

    那么就可以对比审计原来的代码,

    如果需要使用 Knex.js 重写此业务,

    无需阅读 Knex.js 文档或者手动编码,

    直接使用生成的代码即可。

    使用举例:

    chatGPT Generate Knexjs Code

    示例 SQL

    SELECT e.name
    FROM employees e
    JOIN departments d ON e.department_id = d.id
    JOIN (
        SELECT department_id, AVG(salary) AS avg_salary
        FROM salaries
        GROUP BY department_id
    ) AS avg_salaries ON d.id = avg_salaries.department_id
    JOIN salaries s ON e.id = s.employee_id
    WHERE d.name = 'Engineering' AND s.salary > avg_salaries.avg_salary;
    

    使用 Knex.js 编写上述 SQL 查询的生成代码如下:

    const knex = require('knex')({
      client: 'your_database_client',
      connection: {
        // your database connection configuration
      }
    });
    
    knex.select('e.name')
      .from('employees as e')
      .join('departments as d', 'e.department_id', 'd.id')
      .join(knex.select('department_id', knex.raw('AVG(salary) as avg_salary')).from('salaries').groupBy('department_id').as('avg_salaries'), 'd.id', 'avg_salaries.department_id')
      .join('salaries as s', 'e.id', 's.employee_id')
      .where('d.name', 'Engineering')
      .andWhere('s.salary', '>', knex.raw('avg_salaries.avg_salary'))
      .then(rows => {
        console.log(rows);
      })
      .catch(err => {
        console.error(err);
      })
      .finally(() => {
        knex.destroy();
      });
    

    记得替换 your_database_client 和连接配置与您的实际数据库信息相匹配。

    参考 Reference:

    https://knexjs.org

    https://chat.openai.com