乐于分享
好东西不私藏

从0学Excel VBA编程 · 番外篇8:SQL 跨文件/跨表 JOIN——多表关联,一行搞定

从0学Excel VBA编程 · 番外篇8:SQL 跨文件/跨表 JOIN——多表关联,一行搞定

从0学Excel VBA编程 · 番外篇8:SQL 跨文件/跨表 JOIN——多表关联,一行搞定

学习目标

  1. 搞懂 SQL 的 JOIN 是干什么的(按"关键列"把两张表拼成一张宽表)
  2. 掌握同工作簿跨表 JOIN、跨文件 UNION ALL、跨文件 JOIN 三种写法
  3. 通过 3 个实战案例,用 JOIN 替代 VLookup 循环、用 UNION 替代多文件拷贝合并

知识点精讲

番外篇 7 我们用 SQL 在一张表里筛选、汇总。实际工作中数据常分散在多张表、甚至多个文件:比如"销售表"只有产品 ID 和数量,"产品表"才有产品名称和单价。要把它们拼到一起算金额,用 VLookup 循环又慢又啰嗦;SQL 的 JOIN 一行就能把两表按"关键列"对齐合并。

三个必须知道的关键点:

  • ① JOIN 是什么:用两张表共有的列(如 产品ID)当"胶水",把对应行拼成一行。INNER JOIN(内连接)只保留两边都能对上的;LEFT JOIN(左连接)保留左表全部、右表对不上的留空。本篇用最常用、最稳的 INNER JOIN
  • ② 同文件 vs 跨文件:同一工作簿里多张表,直接写 [表1$] a INNER JOIN [表2$] b ON …跨文件时,被引用的那个文件要用"外部表"语法写在方括号里:[Excel 12.0;DATABASE=完整路径.xlsx;HDR=Yes;IMEX=1].[Sheet$]。连接串仍连当前工作簿即可,SQL 里的外部表会自己去找那个文件。
  • ③ 多文件合并用 UNION ALL:结构相同的多个分店文件,用 SELECT … FROM 文件A UNION ALL SELECT … FROM 文件B 首尾相接合成一张大表(相当于番外篇 3 的 FSO 合并,但一句 SQL 完事),外层再 GROUP BY 汇总。

坑提醒:第一,运行前相关文件要存在、路径写对;跨文件查询不需要"先合并",但被查文件不能被别人独占打开。第二,外部表语法里 DATABASE= 后面是完整绝对路径,路径里尽量别出现 ] 这类会破坏方括号的字符。第三,连接串里的 运行SQL 公共函数沿用番外篇 7,案例 2、3 直接复用,不用再写一遍。


3 个实战案例

通用准备:本工作簿里案例 1 需要"销售"表和"产品"表(都有 产品ID 列);案例 2、3 需要在工作簿同目录(或 待合并\)放好对应分店/销售/产品 Excel。**运行前先保存本工作簿**(ADO 读磁盘)。下面案例 1 给出公共函数 运行SQL,案例 2、3 直接复用它(同一标准模块即可)。

案例 1(简单):同文件跨表 JOIN,算每笔销售金额(替代 VLookup)

功能说明:用 INNER JOIN 把"销售"表(产品ID、数量)和"产品"表(产品ID、产品名称、单价)按 产品ID 拼起来,直接算出 数量×单价 的金额,写进"销售明细"表。比一行行 VLookup 再乘清爽太多。

操作步骤

  1. 插入「标准模块」,先粘贴下面的 运行SQL 公共函数(案例 2、3 复用)。
  2. 再粘贴 案例1_跨表JOIN,确保本工作簿有"销售""产品"两张表,运行它。
  3. 多出"销售明细"表:产品ID、产品名称、数量、单价、金额。
' ===== 公共函数:执行 SQL,把结果写进目标表(沿用番外篇7) =====Function 运行SQL(SQL语句 As String, 目标表 As Worksheet) As Long    Dim conn As Object, rs As Object    Dim connStr As String, i As Long    connStr = "Provider=Microsoft.ACE.OLEDB.12.0;" & _              "Data Source=" & ThisWorkbook.FullName & ";" & _              "Extended Properties=""Excel 12.0;HDR=Yes;IMEX=1"";"    Set conn = CreateObject("ADODB.Connection")    conn.Open connStr    Set rs = CreateObject("ADODB.Recordset")    rs.Open SQL语句, conn    目标表.Cells.Clear    For i = 0 To rs.Fields.Count - 1        目标表.Cells(1, i + 1).Value = rs.Fields(i).Name    Next i    目标表.Range("A2").CopyFromRecordset rs    运行SQL = rs.RecordCount    rs.Close    conn.CloseEnd FunctionSub 案例1_跨表JOIN()    Dim 结果表 As Worksheet    On Error Resume Next    Set 结果表 = ThisWorkbook.Sheets("销售明细")    On Error GoTo 0    If 结果表 Is Nothing Then        Set 结果表 = ThisWorkbook.Sheets.Add        结果表.Name = "销售明细"    End If    Dim SQL As String    SQL = "SELECT a.[产品ID], b.[产品名称], a.[数量], b.[单价], " & _          "a.[数量]*b.[单价] AS 金额 " & _          "FROM [销售$] a INNER JOIN [产品$] b ON a.[产品ID]=b.[产品ID]"    运行SQL SQL, 结果表    MsgBox "跨表 JOIN 完成,已算出金额。", vbInformationEnd Sub

要点:a 和 b 是两张表的别名,用来区分两边同名的 产品IDON a.[产品ID]=b.[产品ID] 就是"胶水列";a.[数量]*b.[单价] AS 金额 在拼表的同时直接算金额。这就是一行替代"VLookup 找名称 + 乘单价"的完整循环。


案例 2(中等):跨文件 UNION ALL 合并多个分店,再汇总

功能说明:番外篇 3 我们用 FSO 一个一个打开文件再拷贝合并。这里用 UNION ALL 把"待合并\分店A.xlsx""分店B.xlsx"两个结构相同的文件直接首尾拼接成"合并"表,再 GROUP BY 汇总成"汇总"表——两步都是一句 SQL。

操作步骤

  1. 运行SQL 函数已在案例 1 就位。
  2. 在工作簿目录建 待合并\ 文件夹,放入 分店A.xlsx分店B.xlsx(第 1 列产品、第 3 列销量)。
  3. 粘贴 案例2_跨文件合并,运行它。先看"合并"表(两店拼一起),再看"汇总"表(按产品合计)。
Sub 案例2_跨文件合并()    Dim 合并表 As Worksheet, 汇总表 As Worksheet    Dim 路径 As String, SQL As String, SQL2 As String    路径 = ThisWorkbook.Path & "\待合并\"    On Error Resume Next    Set 合并表 = ThisWorkbook.Sheets("合并")    Set 汇总表 = ThisWorkbook.Sheets("汇总")    On Error GoTo 0    If 合并表 Is Nothing Then        Set 合并表 = ThisWorkbook.Sheets.Add: 合并表.Name = "合并"    End If    If 汇总表 Is Nothing Then        Set 汇总表 = ThisWorkbook.Sheets.Add: 汇总表.Name = "汇总"    End If    ' 第一步:UNION ALL 把两个文件拼成一张大表    SQL = "SELECT [产品],[销量] FROM " & _          "[Excel 12.0;DATABASE=" & 路径 & "分店A.xlsx;HDR=Yes;IMEX=1].[Sheet1$] " & _          "UNION ALL " & _          "SELECT [产品],[销量] FROM " & _          "[Excel 12.0;DATABASE=" & 路径 & "分店B.xlsx;HDR=Yes;IMEX=1].[Sheet1$]"    运行SQL SQL, 合并表    ' 第二步:对"合并"表按产品汇总(UNION 出来的表也能直接查)    SQL2 = "SELECT [产品], SUM([销量]) AS 销量合计 FROM [合并$] GROUP BY [产品]"    运行SQL SQL2, 汇总表    MsgBox "跨文件 UNION 合并并汇总完成。", vbInformationEnd Sub

要点:外部表语法 [Excel 12.0;DATABASE=路径;HDR=Yes;IMEX=1].[Sheet1$] 让 SQL 直接读另一个文件,无需先打开;UNION ALL 把两店数据首尾相接(用 UNION 不带 ALL 会自动去重,合并明细别用)。合并后的"合并"表就是普通工作表,第二步照常 GROUP BY 汇总。要加更多分店,照着再 UNION ALL 一段即可。


案例 3(实用小案例):跨文件 JOIN,直接关联两个独立文件统计

功能说明:销售记录在一个文件 销售.xlsx、产品信息在另一个文件 产品.xlsx。不用先合并,直接用跨文件 INNER JOIN 把两文件按 产品ID 关联,按产品名称汇总销售额,写进"销售统计"表。

操作步骤

  1. 在工作簿同目录放好 销售.xlsx(含 销售$:产品ID、数量)和 产品.xlsx(含 产品$:产品ID、产品名称、单价)。
  2. 运行SQL 函数仍在。粘贴 案例3_跨文件JOIN,运行它。
  3. "销售统计"表输出:每个产品名称的销售额合计(数量×单价求和)。
Sub 案例3_跨文件JOIN()    Dim 结果表 As Worksheet    Dim 路径 As String, SQL As String    路径 = ThisWorkbook.Path & "\"    On Error Resume Next    Set 结果表 = ThisWorkbook.Sheets("销售统计")    On Error GoTo 0    If 结果表 Is Nothing Then        Set 结果表 = ThisWorkbook.Sheets.Add        结果表.Name = "销售统计"    End If    ' 直接关联两个不同文件,按产品名称汇总销售额    SQL = "SELECT b.[产品名称], SUM(a.[数量]*b.[单价]) AS 销售额 " & _          "FROM [Excel 12.0;DATABASE=" & 路径 & "销售.xlsx;HDR=Yes;IMEX=1].[销售$] a " & _          "INNER JOIN [Excel 12.0;DATABASE=" & 路径 & "产品.xlsx;HDR=Yes;IMEX=1].[产品$] b " & _          "ON a.[产品ID]=b.[产品ID] " & _          "GROUP BY b.[产品名称]"    运行SQL SQL, 结果表    MsgBox "跨文件 JOIN 统计完成。", vbInformationEnd Sub

要点:两个文件各用一段"外部表"语法当 abON a.[产品ID]=b.[产品ID] 跨文件对齐,SUM(a.[数量]*b.[单价]) 边关联边汇总。这一句顶了"打开文件→VLookup→循环乘→汇总"一长串代码,而且数据分散在不同文件也照样查。


本篇小结

  • JOIN = 按关键列拼表INNER JOIN … ON 关键列相等,一行替代 VLookup 循环;LEFT JOIN 可保留左表全部。
  • 同文件直接 JOIN[表A$] a INNER JOIN [表B$] b ON …,别名 a/b 区分同名列。
  • 跨文件两种姿势UNION ALL 把多文件结构相同的数据首尾合并(替代 FSO 拷贝);外部表语法 [Excel 12.0;DATABASE=路径;HDR=Yes;IMEX=1].[Sheet$] 让 SQL 直接读别的文件做 JOIN/汇总。
  • 公共函数复用运行SQL 一次封装(连当前簿 + 执行 + 写回),跨文件时 SQL 用外部表语法即可,连接串不用改。
  • 三道铁律DATABASE= 写完整绝对路径且路径避开 ];被查文件存在且未被独占打开;运行前先保存本工作簿。

下一篇内容预告

本篇是《从0学Excel VBA编程》番外篇8(SQL 跨文件/跨表 JOIN),属可选进阶补充。若继续深造,可选:

  • 番外篇9:连接外部数据库(Access / CSV / 甚至 SQL Server),用 VBA 直接查公司数据库做更重分析;
  • 或到此为止——主系列 20 篇 + 番外篇 1~8 + 收尾篇 已覆盖从 0 到自动化工具的完整路径。 需要哪个,告诉我就行。
基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-08-25 10:11:51 HTTP/1.1 GET : https://www.yeyulingfeng.com/a/965197.html
  2. 运行时间 : 0.331552s [ 吞吐率:3.02req/s ] 内存消耗:5,104.67kb 文件加载:145
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=7ffc68c03a6ae604ffaf44c9663b3939
  1. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/composer/autoload_static.php ( 6.05 KB )
  7. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/ralouphie/getallheaders/src/getallheaders.php ( 1.60 KB )
  10. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  11. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  12. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  13. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  14. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  15. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  16. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  17. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  18. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  19. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions_include.php ( 0.16 KB )
  21. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/guzzlehttp/guzzle/src/functions.php ( 5.54 KB )
  22. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  23. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  24. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  25. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/provider.php ( 0.19 KB )
  26. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  27. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  28. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  29. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/common.php ( 0.03 KB )
  30. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  32. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/alipay.php ( 3.59 KB )
  33. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  34. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/app.php ( 0.95 KB )
  35. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cache.php ( 0.78 KB )
  36. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/console.php ( 0.23 KB )
  37. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/cookie.php ( 0.56 KB )
  38. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/database.php ( 2.48 KB )
  39. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/filesystem.php ( 0.61 KB )
  40. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/lang.php ( 0.91 KB )
  41. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/log.php ( 1.35 KB )
  42. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/middleware.php ( 0.19 KB )
  43. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/route.php ( 1.89 KB )
  44. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/session.php ( 0.57 KB )
  45. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/trace.php ( 0.34 KB )
  46. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/config/view.php ( 0.82 KB )
  47. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/event.php ( 0.25 KB )
  48. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  49. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/service.php ( 0.13 KB )
  50. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/AppService.php ( 0.26 KB )
  51. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  52. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  53. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  54. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  55. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  56. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/services.php ( 0.14 KB )
  57. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  58. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  59. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  60. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  61. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  62. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  63. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  64. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  65. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  66. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  67. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  68. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  69. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  70. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  71. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  72. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  73. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  74. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  75. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  76. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  77. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  78. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  79. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  80. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  81. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  82. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  83. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  84. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  85. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  86. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  87. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/Request.php ( 0.09 KB )
  88. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  89. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/middleware.php ( 0.25 KB )
  90. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  91. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  92. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  93. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  94. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  95. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  96. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  97. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  98. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  99. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  100. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  101. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  102. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  103. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/route/app.php ( 4.22 KB )
  104. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  105. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  106. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Index.php ( 10.56 KB )
  108. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/BaseController.php ( 2.05 KB )
  109. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  110. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  111. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  112. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  113. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  114. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  115. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  116. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  117. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  118. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  119. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  120. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  121. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  122. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  123. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  124. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  125. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  126. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  127. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  128. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  129. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  130. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  131. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  132. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  133. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  134. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  135. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/app/controller/Es.php ( 3.11 KB )
  136. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  137. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  138. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  139. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  140. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  141. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/runtime/temp/c935550e3e8a3a4c27dd94e439343fdf.php ( 31.50 KB )
  142. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  143. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  144. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  145. /yingpanguazai/ssd/ssd1/www/wwww.yeyulingfeng.com/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000967s ] mysql:host=127.0.0.1;port=3306;dbname=wenku;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001294s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.019382s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000904s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001610s ]
  6. SELECT * FROM `set` [ RunTime:0.005529s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001686s ]
  8. SELECT * FROM `article` WHERE `id` = 965197 LIMIT 1 [ RunTime:0.001110s ]
  9. UPDATE `article` SET `lasttime` = 1787623911 WHERE `id` = 965197 [ RunTime:0.005619s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 64 LIMIT 1 [ RunTime:0.016652s ]
  11. SELECT * FROM `article` WHERE `id` < 965197 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.010370s ]
  12. SELECT * FROM `article` WHERE `id` > 965197 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.028855s ]
  13. SELECT * FROM `article` WHERE `id` < 965197 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.033549s ]
  14. SELECT * FROM `article` WHERE `id` < 965197 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.012494s ]
  15. SELECT * FROM `article` WHERE `id` < 965197 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.007915s ]
0.334968s