RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / user-526786

Ivan Chuzhmakov's questions

Martin Hope
Ivan Chuzhmakov
Asked: 2024-09-09 22:59:37 +0000 UTC

是否可以进行多个 UNPIVOT?

  • 5

有一个脚本,其输出是一行,包含总计和一堆列。您需要按组扩展列。输出示例: 在此输入图像描述

它应该如何结果的一个例子:

在此输入图像描述

这只会产生一组:

    SELECT * FROM(/*здесь большой скрипт*/  )tt
  UNPIVOT (
  gr FOR title IN(18_a,18_b)
  )unpvt

如何按列拆分?

sql
  • 1 个回答
  • 29 Views
Martin Hope
Ivan Chuzhmakov
Asked: 2024-07-23 19:37:41 +0000 UTC

创建涉及多个 PostgreSQL 数据库的查询

  • 6

我在 2017 年看到过类似的问题,但由于 Postgres Pro 已经发布了相当多的版本,这种情况可能有所改变。所以问题是:PostgreSQL 中现在是否有一种机制可以让您在同一服务器上对本地数据库进行查询,而无需手鼓跳舞,这将与 MSSQL 一样高效?那些。一个查询使用联接从多个数据库及其表收集数据。

我到处遇到这样的查询,据说从另一个数据库加入将需要很长时间,并且由于现在计划从 MSSQL 迁移到 PostgreSQL,因此可能有必要更改 DBMS 的结构,因为有许多繁重的脚本从不同的基础提取数据并连接在一起。

如果现在一切生产力都还很糟糕,那么谁能摆脱这种情况呢?我想到的唯一一件事是创建几个数据库模式,这些模式应该像以前调用数据库一样调用,并且每个模式都从与其名称相对应的数据库中提取数据。

sql
  • 1 个回答
  • 43 Views
Martin Hope
Ivan Chuzhmakov
Asked: 2024-07-18 20:53:11 +0000 UTC

使用空字段复制 fetchAll 输出

  • 5

花了半天时间,发现一个奇怪的bug,如果字段为空,同一个条目会显示两次。

class SearchPeople{
    private $dsn = 'sqlsrv:Server=test\sql;Database=test;';
    private $user = 'test';
    private $password = 'test';
    private $options  = [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC];
    private $con;
    public function __construct(){
        try {
            $this->con=new PDO($this->dsn, $this->user, $this->password, $this->options);                
        } catch (PDOException $e) {
            var_dump($e);
        }        
    }
    public function searchPeople(){                                                                              
        $sql="SELECT distinct id,sName,Name,pName,dateMan,typeDoc,serDoc,numDoc,dateDoc,contact FROM people WHERE sName = ? 
            AND Name = ? AND dateMan = ? AND typeDoc = ? AND numDoc = ? AND dateDoc = ?  AND (pName = ? OR pName IS NULL)  
            AND (serDoc = ? OR serDoc IS NULL)";
        $query = $this->con->prepare($sql);
        $tr=['testov', 'test', '10.12.2010', '24', '555333', '01.04.2011','',''];
        $query->execute($tr);
        $result=$query->fetchAll(PDO::FETCH_ASSOC);                
        return $result;
    }
}
    $db=new SearchPeople();    
    $result=$db->searchPeople();    
    var_dump($result);  

PHP 版本 8.3.2,MSSQL 数据库(在数据库中相同的查询显示一条记录)谁知道原因是什么以及如何修复此行为?

PS我正在添加我正在做的事情的屏幕截图;数据库中的查询(刚刚创建了一条记录(甚至为了清晰起见删除了不同的记录) 在此输入图像描述 我正在执行的代码本身 在此输入图像描述

结论

在此输入图像描述

php
  • 1 个回答
  • 37 Views
Martin Hope
Ivan Chuzhmakov
Asked: 2024-06-27 16:37:01 +0000 UTC

合并具有NULL优先级的查询记录

  • 5

有一个任务是从表(MSSQL)中选择记录并按ID和DT对它们进行分组,并且如果具有相同id和DT的记录之一的字段date_end为空,则选择该记录,如果有没有该字段,则选择最大日期(需要输出end_date字段)

表结构

ID D.T. 日期结束
12345 Q2 无效的
12345 Q2 01/01/2023

我尝试了这个查询,但两条记录都返回了

select ID,DT,case when date_end is NULL then null else MAX(date_end) end date_end from test
    GROUP BY ID,DT,date_end

窗口函数 FIRST_VALUE 有帮助,但速度非常慢

select ID,DT,date_end from(
   select ID,DT,FIRST_VALUE(date_end) OVER(ORDER BY date_end asc)date_end from test
)g
GROUP BY ID,DT,date_end

还有哪些其他选择?

ps 感谢@Akina 的回答,最终的请求结果是这样的:

select ID, DT, date_end from (
  SELECT ID, DT, date_end,
         ROW_NUMBER() OVER (PARTITION BY ID, DT ORDER BY date_end asc) rn
  FROM test
)cte
WHERE rn = 1;

此设计的运行速度比 FIRST_VALUE 快得多

sql
  • 2 个回答
  • 36 Views
Martin Hope
Ivan Chuzhmakov
Asked: 2024-03-18 00:18:19 +0000 UTC

如果列中没有很多选项,那么表之间的链接字段如何帮助 SQL 查询?

  • 5

我知道使用字段关系可以更新或删除相关表中的数据。当我创建依赖于组织员工的用户表结构时,我使用了这种方法。当组织的员工离开时,他会自动从用户表中删除。但我对另一面感兴趣。假设有一个表 peoples,其中所有流行数据都是姓名、性别、出生年份、SNILS、护照、保险单,以及残疾群体、电话号码、电子邮件等数据。假设可能有更多字段,并且其中可能有也可能没有数据,就像相同的电话号码、电子邮件或残障群体一样。创建单独的表(例如电话)并根据人员 ID 建立连接是否有意义?将所有数据存储在一张表中的优点和缺点是什么?因为,例如,在选择电话时,在任何情况下都需要将它们组合成分隔字符串(例如;)或数组。然后你还可以使用“;”记下一个人的电话号码。并且不必费心连接并创建额外的表。

我完全理解当客户端->订单和其他之间存在连接时,当在属于一个客户端的大量数据行上建立连接时,但是如果一个字段只能有一小部分值该怎么办,这可以完美地适应同一个 varchar 字段吗?

sql
  • 2 个回答
  • 65 Views
Martin Hope
Ivan Chuzhmakov
Asked: 2023-10-08 02:56:46 +0000 UTC

通过赋值检查对象是否存在

  • 5

每次为不同的页面编写通用函数但具有相同的目标时,都需要检查页面上是否存在对象并进行后续赋值并使用它。设计相当单调、繁琐:

if(document.getElementById('modal')){
  modal=document.getElementById('modal');
  //дальше работа уже с существующим объектом
}

该条目有较短的版本吗?

PS 在条件本身中赋值是否正确?

<input type="text" value="5" id="inp">
    <script>
       if (inp=document.getElementById('inp')) { console.log(inp.value) }
    </script>

javascript
  • 1 个回答
  • 54 Views
Martin Hope
Ivan Chuzhmakov
Asked: 2023-05-08 00:59:41 +0000 UTC

如何在不重新获取的情况下使用从获取中接收到的数据?

  • 5

我编写了以下代码,它接收数据并在单击时从数组中剪切 10 个元素:

let url = 'https://dummyjson.com/products?limit=100';//откуда берём JSON данные
let rows_on_page=10;//количество строк на страницу
window.onload = function() {
    pag();    
};
async function pag(number_current_page=1)
{            
    fetch(url,{
        method:'GET',
        headers: {
            'Content-Type': 'text/html;charset=utf-8'
        },
        })
    .then((response) => response.json())
    .then((data) => {
        let offset=number_current_page*rows_on_page; 
        let current_list=offset-rows_on_page;
        all_count_rows=Object.values(data)[0].length;//общее количество строк запроса
    for (var key in data.products.slice(current_list,offset)) {
        index=Number(key)+current_list;
        i=index+1;                         
        console.log(data.products[index]['title']);        
    }
    })
}
<!DOCTYPE html>

<html>
    <head>
        <title>pag</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
    </head>
    <body>
        <nav class="pagination justify-content-center">
            <ul class="pagination">
                <li class="page-item  disabled" onclick="pag(1)">
                    <a class="page-link" href="#"> |&lt; </a>
                </li>
                <li class="page-item  disabled" onclick="pag(1)">
                    <a class="page-link" href="#">Назад</a>
                </li>
                <li class="page-item active " onclick="pag(this.textContent)">
                    <a class="page-link" href="#">1</a>
                </li>
                <li class="page-item  " onclick="pag(this.textContent)">
                    <a class="page-link" href="#">2</a>
                </li>
                <li class="page-item  " onclick="pag(this.textContent)">
                    <a class="page-link" href="#">3</a>
                </li>
                <li class="page-item  " onclick="pag(this.textContent)">
                    <a class="page-link" href="#">4</a>
                </li>
                <li class="page-item  " onclick="pag(this.textContent)">
                    <a class="page-link" href="#">5</a>
                </li>
                <li class="page-item  " onclick="pag(2)">
                    <a class="page-link" href="#">Далее</a>
                </li>
                <li class="page-item  " onclick="pag(10)">
                    <a class="page-link" href="#"> &gt;| </a>
                </li>
            </ul>
        </nav>
        <script src="ft.js"></script>    
    </body>
</html>

但是每次点击,都会访问 url 并读取数据。如何获取数据 1 次并使用它不断切割 10 个元素进行输出?

javascript
  • 1 个回答
  • 37 Views

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    我看不懂措辞

    • 1 个回答
  • Marko Smith

    请求的模块“del”不提供名为“default”的导出

    • 3 个回答
  • Marko Smith

    "!+tab" 在 HTML 的 vs 代码中不起作用

    • 5 个回答
  • Marko Smith

    我正在尝试解决“猜词”的问题。Python

    • 2 个回答
  • Marko Smith

    可以使用哪些命令将当前指针移动到指定的提交而不更改工作目录中的文件?

    • 1 个回答
  • Marko Smith

    Python解析野莓

    • 1 个回答
  • Marko Smith

    问题:“警告:检查最新版本的 pip 时出错。”

    • 2 个回答
  • Marko Smith

    帮助编写一个用值填充变量的循环。解决这个问题

    • 2 个回答
  • Marko Smith

    尽管依赖数组为空,但在渲染上调用了 2 次 useEffect

    • 2 个回答
  • Marko Smith

    数据不通过 Telegram.WebApp.sendData 发送

    • 1 个回答
  • Martin Hope
    Alexandr_TT 2020年新年大赛! 2020-12-20 18:20:21 +0000 UTC
  • Martin Hope
    Alexandr_TT 圣诞树动画 2020-12-23 00:38:08 +0000 UTC
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5