mysql - 为什么我在 MySQL 中的 CONCAT 函数会导致语法错误?
问题描述
SELECT CONCAT(PurchaseID, OnlineType, ShopLocation) As Purchase
FROM PURCHASE
WHERE PurchaseID IN
(
SELECT PurchaseID
FROM ONLINEPURCHASE
(
WHERE PurchaseID IN (SELECT PurchaseID
FROM WALKINPURCHASE
)
);
我正在尝试放置一个 concat 来显示在 OnlineType 和 Shoplocation 中输入的 PurchaseID
Error
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(
WHERE PurchaseID IN (SELECT PurchaseID
FROM WALKINPURCHASE
解决方案
你有一个)太多了
SELECT CONCAT(PurchaseID, OnlineType, ShopLocation) As Purchase
FROM PURCHASE
WHERE PurchaseID IN
(
SELECT PurchaseID
FROM ONLINEPURCHASE
WHERE PurchaseID IN
(SELECT PurchaseID
FROM WALKINPURCHASE
)
);
您应该尝试对齐代码,以便您可以在一个视图中看到这些块。
但是你应该试试这个 Select 语句
SELECT CONCAT(p.PurchaseID, op.OnlineType, p.ShopLocation) As Purchase
FROM PURCHASE p
inner join ONLINEPURCHASE op
ON p.PurchaseID = op.PurchaseID
inner join WALKINPURCHASE w
ON op.PurchaseID = w.PurchaseID;
推荐阅读
- html - CSS - vh 确实有效,而百分比无效
- vue.js - Vue.js 将 props 数组传递给动态组件
- node.js - AWS SNS 发布仅适用于本地,但不适用于 lambda
- unit-testing - Apache CXF 将 xml 转换为 SoapMessage 以进行单元测试
- android - BottomSheetBehavior_Layout_behavior_hideable 如何翻译成 app:behavior_hideable?
- python - PyQt 将 PuTTY / KiTTY 嵌入应用程序 - 无法删除边框
- ios - 在同一个 Firebase 实例上使用 Firebase 电子邮件链接身份验证登录多个 iOS 应用
- c++ - 具有等轴和自动缩放的 QwtPlot
- php - 根据另一个数组键的顺序对数组键进行排序
- angular - Spring 社交和 Angular