就在最近,一位朋友建议用汇编代码编写 SQL 语句是可能且可以实现的(尽管非常困难),因为每个编程操作最终都会进入处理器级别的执行。
我对 SQL 的行为做了一些研究,尽管它遵循关系代数的理论和独立于平台的执行,但我仍然相信抽象和语义的水平相当遥远,甚至无法考虑将 SQL 语句转换为汇编代码的方法(一组非常特定于操作/内存/资源的指令)。
也许您可以模仿SQL 语句的处理器操作结果,并尝试使用纯汇编指令集来复制它。但您会意识到,您仍然不会编写/翻译 SQL 语句。
以 MonetDB 的SQL 参考页面为例,他们在第三段中声明了以下内容:
“该架构基于编译器,它将 SQL 语句转换为 MonetDB 汇编语言 (MAL)。在此过程中,执行特定于关系代数的常见优化启发式方法。”
然而,SQL 语言甚至不允许键入暴力汇编指令,而基于 C 和 C# 等常见语言则允许此类键入/导入。
你们有什么感想?感谢您分享您的想法!
sql assembly programming-languages processor relational-algebra