小编Tom*_*lak的帖子

SQL查询:大表之间的内连接优化

我在MySQL 4.x DB中有以下3个表:

  • 主持人:(300.000条记录)
    • id(UNSIGNED INT)PRIMARY KEY
    • 名称(VARCHAR 100)
  • 路径:(6.000.000条记录)
    • id(UNSIGNED INT)PRIMARY KEY
    • 名称(VARCHAR 100)
  • 网址:(7.000.000条记录)
    • host(UNSIGNED INT)PRIMARY KEY <---链接到hosts.id
    • path(UNSIGNED INT)PRIMARY KEY <---链接到paths.id

如您所见,模式非常简单,但问题是这些表中的数据量.

这是我正在运行的查询:

SELECT CONCAT(H.name, P.name)
FROM hosts AS H
INNER JOIN urls as U ON H.id = U.host
INNER JOIN paths AS P ON U.path = P.id;
Run Code Online (Sandbox Code Playgroud)

此查询工作正常,但需要50分钟才能运行.有没有人知道如何加快查询速度?

提前致谢.萨科

mysql sql optimization bigtable inner-join

6
推荐指数
2
解决办法
1万
查看次数

为什么MSXML中的createProcessingInstruction会生成不完整的输出?

以下VBA代码生<?xml version="1.0"?>成为输出.

Dim XML As New DomDocument 
Dim pi As IXMLDOMProcessingInstruction

'.... some code that sets the root element of the document

Set pi = XML.createProcessingInstruction("xml", "version='1.0' encoding='UTF-8'")
        XML.insertBefore pi, XML.documentElement
Run Code Online (Sandbox Code Playgroud)

为什么encoding="UTF-8"遗漏了?

xml ms-access msxml access-vba

6
推荐指数
2
解决办法
8187
查看次数

正则表达式定义一些二进制序列

你如何编写一个正则表达式来定义0和1的所有字符串,作为二进制数,表示一个3的倍数的整数.

一些有效的二进制数将是:

11
110
1001
1100
1111

regex

6
推荐指数
2
解决办法
1万
查看次数

XSLT:提取唯一属性值

请帮助,我是一个XSLT新手,我正在尝试将一种XML格式转换为另一种格式.

我需要提取唯一的属性值并将值转换为新格式.下面的示例XML显示了原始和新/目标格式.

我花了很多年时间试图这样做而没有任何享受.任何人都可以帮忙或给我一些指示?

原始格式:

<base>
  <level>
    <level2 Name ="AA" value="1"/>
  </level>
  <level>
    <level2 Name ="BB" value="2"/>
  </level>
  <level>
    <level2 Name ="BB" value="3"/>
  </level>
  <level>
    <level2 Name ="CC" value="4"/>
  </level>
  <level>
    <level2 Name ="AA" value="5"/>
  </level>
</base>
Run Code Online (Sandbox Code Playgroud)

新格式:

<base>
  <levelNames>
    <level level2Name ="AA"/>
    <level level2Name ="BB"/>
    <level level2Name ="CC"/>
  </levelNames>
</base>
Run Code Online (Sandbox Code Playgroud)

非常感谢.

xslt grouping

6
推荐指数
2
解决办法
9169
查看次数

如何使用嵌入式XML和XSL文件

我正在尝试创建一个包含XML和XSL的嵌入式文件.该测试基于dpawson.co.uk 上的"XML和XSL在一个文件中".源代码如下:

<?xml-stylesheet type="text/xml" href="#stylesheet"?>
<!DOCTYPE doc [
<!ATTLIST xsl:stylesheet
  id    ID  #REQUIRED>
]>
<doc>
<xsl:stylesheet id="stylesheet"
                version="1.0"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <!-- any xsl:import elements -->
  <xsl:template match="xsl:stylesheet" />
  <!-- rest of your stylesheet -->
</xsl:stylesheet>

<!-- rest of your XML document -->
</doc>
Run Code Online (Sandbox Code Playgroud)

最初我已经制作了一个有效的XML和XSL文件.XML看起来像这样:

<?xml-stylesheet type="text/xsl" href="data.xsl"?>
<Report>
    <ReportFor>Test Data</ReportFor>
    <CreationTime>2009-07-29 05:37:14</CreationTime>
</Report>
Run Code Online (Sandbox Code Playgroud)

data.xsl文件看起来像这样:

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="/">
    <!-- ... -->
    <xsl:value-of select="Report/ReportFor" />
    <!-- ... -->
    <xsl:value-of select="Report/CreationTime"/>
    <!-- ... -->
  </xsl:template>
</xsl:stylesheet>
Run Code Online (Sandbox Code Playgroud)

基于这些,我正在尝试创建一个包含XML和XSL的嵌入式XML文件.

目前这个文件看起来像这样: …

xml xslt

6
推荐指数
1
解决办法
8871
查看次数

跨XML文档使用XSD验证属性唯一性

我正在尝试验证XML文档中存在的所有元素的属性的唯一性.

示例XML:

<exampleXml>
  <a id="1"/>
  <a id="2">
    <b id="1"/>
  </a>
</exampleXml>
Run Code Online (Sandbox Code Playgroud)

我的XSD架构:

<xs:schema elementFormDefault="qualified">
  <xs:element name="exampleXml">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" maxOccurs="unbounded" name="a">
          <xs:complexType>
            <xs:complexContent>
              <xs:extension base="baseRuleType">
                <xs:sequence>
                  <xs:element minOccurs="0" maxOccurs="1" name="b">
                    <xs:complexType>
                      <xs:complexContent>
                        <xs:extension base="baseRuleType"/>
                      </xs:complexContent>
                    </xs:complexType>
                  </xs:element>
                </xs:sequence>
              </xs:extension>
            </xs:complexContent>
          </xs:complexType>
        </xs:element>
      </xs:sequence>
    </xs:complexType>
    <xs:unique name="duplicateIdsForbidden">
      <xs:selector xpath="//"/>
      <xs:field xpath="@id"/>
    </xs:unique>
  </xs:element>
  <xs:complexType name="baseRuleType">
    <xs:attribute name="id" use="optional"/>
  </xs:complexType>
</xs:schema>
Run Code Online (Sandbox Code Playgroud)

xpath是这里的问题.我想匹配root下的每个元素,但上面的选择器xpath返回:

Element '{http://www.w3.org/2001/XMLSchema}selector', attribute 'xpath': 
The XPath expression '//' could not be compiled

我可以将xpath更改为"*",但这只会验证作为根的直接后代的元素的id属性.

我正在使用PHP中的lib_xml验证这一点DOMDocument::schemaValidate().任何帮助非常感谢.

php xml xpath xsd libxml2

6
推荐指数
1
解决办法
634
查看次数

在清除后分配给<xsl:variable>

我使用以下方式为变量赋值.

<xsl:variable name="NewValue">
  <xsl:value-of select="normalize-space(//root/id/amount)"/>
</xsl:variable>
Run Code Online (Sandbox Code Playgroud)

在赋值后,我想为同一个变量赋值.像这样:-

<xsl:variable name="NewValue" select="normalize-space(//root/id/amountnew)">
Run Code Online (Sandbox Code Playgroud)

这有什么办法吗?


这里是我的XML样本:

<VolLien>
  <Vest_DocType>SDD</Vest_DocType>
  <Vest_Instrument>395072</Vest_Instrument>
  <Vest_OfOfficialEntity>eee</Vest_OfOfficialEntity>
  <Vest_RecDate>12/24/2009</Vest_RecDate>
  <Vest_Grantee1>abc dd</Vest_Grantee1>
  <Vest_Grantor1>sss</Vest_Grantor1>
  <Vest_RejectCode />
  <Vest_RejectReason /> 
  <Vest_ImageNum> </Vest_ImageNum>
</VolLien>
Run Code Online (Sandbox Code Playgroud)

我的问题是我需要获得<Vest_RecDate>特定的最新信息<Vest_DocType>(比如SDD)然后我需要在xml之前搜索任何日期<Vest_RecDate>(相同的SDD).

如果然后<VolLien>单独提高该特定部分()再次最新.如果我可以重新分配,我会定位节点并获取与之关联的值.现在我正在使用另一个循环.如果有什么东西我可以避免extrs循环.

xslt xslt-2.0

6
推荐指数
1
解决办法
2万
查看次数

GameClosure - 过滤器出错

我正在使用框架GameClosure但我在尝试创建过滤器时遇到错误.我去看文件

在DevKit Docs上我发现了这个:

GameClosure DevKit文档 - 类:ui.filter.Filter

import ui.filter.Filter as Filter;

var filter = new Filter();
Run Code Online (Sandbox Code Playgroud)

这是错误:

Error loading module:
    [[ import ui.filter.Filter as Filter ]]
    requested by: ./src/Level0/Level0.js 
    current directory: http://127.0.0.1:8802/simulate/ricettivointermedio/native-ios/ 
    Error: requested import (ui.filter.Filter) not found
    looked in:
        sdk/timestep/ui/filter/Filter.js
    Import Stack:
        0 : src.Application (./src/Application.js)
        1 : src.Level0.Level0 (./src/Level0/Level0.js) 
    Error: requested import (ui.filter.Filter) not found
    looked in:
        sdk/timestep/ui/filter/Filter.js
    Import Stack:
        0 : src.Application (./src/Application.js)
        1 : src.Level0.Level0 (./src/Level0/Level0.js)
    at loadModule (http://127.0.0.1:8802/simulate/ricettivointermedio/native-ios/native-ios.js:536:11)
    at importer (http://127.0.0.1:8802/simulate/ricettivointermedio/native-ios/native-ios.js:688:18)
    at Object.jsio (http://127.0.0.1:8802/simulate/ricettivointermedio/native-ios/native-ios.js:81:21)
    at …
Run Code Online (Sandbox Code Playgroud)

javascript import gameclosure

6
推荐指数
1
解决办法
128
查看次数

Unicode字符在HTML5画布中无法正确呈现

我正在尝试使用HTML5 canvas元素渲染一个unicode高音谱号.当使用正确的字符代码(特别是1D120)时,它在HTML中渲染得很好,但是当我尝试在画布中使用它时会出现一个奇怪的角色

以下代码在我的javascript文件中,它在画布上发挥作用......

var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');

context.font = "48px serif";
context.strokeText("\u1D120", 10, 50);
Run Code Online (Sandbox Code Playgroud)
<h1>&#x1D120;</h1>

<canvas id="canvas" width="100" height="100">
</canvas>
Run Code Online (Sandbox Code Playgroud)

不幸的是,我不能把这个角色的照片,因为我的代表太低了.

任何洞察可能导致此问题的原因都表示赞赏.提前致谢!

html javascript unicode canvas html5-canvas

6
推荐指数
2
解决办法
3235
查看次数

在Powershell中展平嵌套数组

鉴于此输入:

$values = @(1, @(2, 3), $null, @(@(4), 5), 6)
Run Code Online (Sandbox Code Playgroud)

什么是创建一个干净的迭代/管道

1,2,3,4,5,6
Run Code Online (Sandbox Code Playgroud)

条件:

  • 它不应该包含$null在输出中.
  • 即使输入为$ null或者所有输入的值都是$ null,它也应该导致一个空数组.

奖金:

  • 它应该显示[1,2,3,4,5,6]为结果ConvertTo-Json -Compress
  • 它应该优选地是干净且令人难忘的,即优选非拜占庭式管道操作,如果可能的话,不依赖于自定义功能.

在PowerShell中看过Flatten数组,那里的解决方案似乎不符合条件.

powershell

6
推荐指数
2
解决办法
2770
查看次数