neo4j和mysql_Neo4j 和 Mysql 查询基本语法的区别

本文对比了Neo4j与MySQL在全表扫描、价格排序、按名称筛选、模糊查询、多表联合查询及分组查询等场景下的查询语句,详细解析了它们之间的语法差异。
摘要由CSDN通过智能技术生成

-- 1. 全表扫描 --

-- mysql --

SELECT p.*

FROM products as p;

-- neo4j --

MATCH (p:Product)

RETURN p;

-- 2. 查询价格最贵的10个商品,只返回商品名字和单价 --

-- mysql --

SELECT p.ProductName, p.UnitPrice

FROM products as p

ORDER BY p.UnitPrice DESC

LIMIT 10;

-- neo4j --

MATCH (p:Product)

RETURN p.productName, p.unitPrice

ORDER BY p.unitPrice DESC

LIMIT 10;

-- 3. 按照商品名字筛选 --

-- mysql --

SELECT p.ProductName, p.UnitPrice

FROM products AS p

WHERE p.ProductName = 'Chocolade';

-- neo4j --

MATCH (p:Product)

WHERE p.productName = "Chocolade"

RETURN p.productName, p.unitPrice;

-- 其他的写法 --

MATCH (p:Product {productName:"Chocolade"})

RETURN p.productName, p.unitPrice;

-- 4. 按照商品名字筛选2 --

-- mysql --

SELECT p.ProductName, p.UnitPrice

FROM products as p

WHERE p.ProductName IN ('Chocolade','Chai');

-- neo4j --

MATCH (p:Product)

WHERE p.productName IN ['Chocolade','Chai']

RETURN p.productName, p.unitPrice;

-- 5. 模糊查询和数值过滤 --

-- mysql --

SELECT p.ProductName, p.UnitPrice

FROM products AS p

WHERE p.ProductName LIKE 'C%' AND p.UnitPrice 100;

-- neo4j --

MATCH (p:Product)

WHERE p.productName STARTS WITH "C" AND p.unitPrice 100

RETURN p.productName, p.unitPrice;

-- 6. 多表联合查询--

-- mysql --

SELECT DISTINCT c.CompanyName

FROM customers AS c

JOIN orders AS o ON (c.CustomerID = o.CustomerID)

JOIN order_details AS od ON (o.OrderID = od.OrderID)

JOIN products AS p ON (od.ProductID = p.ProductID)

WHERE p.ProductName = 'Chocolade';

-- neo4j --

MATCH (p:Product {productName:"Chocolade"})

RETURN distinct c.companyName;

-- 7. 分组查询 --

-- mysql --

SELECT e.EmployeeID, count(*) AS Count

FROM Employee AS e

JOIN Order AS o ON (o.EmployeeID = e.EmployeeID)

GROUP BY e.EmployeeID

ORDER BY Count DESC LIMIT 10;

-- neo4j --

MATCH (:Order)

RETURN e.name, count(*) AS cnt

ORDER BY cnt DESC LIMIT 10

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值