【发布时间】:2021-02-23 07:25:03
【问题描述】:
我是索引新手,遇到了 Postgresql 一直说我的代码有错误的问题。
是否需要在引用members 表主键的bookings 表上添加外键。
如果我的 SQL 表结构如下,并且我有一个使用 joindate 的带有 WHERE 子句的 JOIN 查询,我该如何实现索引
SELECT *
FROM bookings b
JOIN members m ON m.memid = b.memid WHERE joindate > '2012-08-01';
bookings members
--------- ----------
PK: bookid PK: memid
facid surname
memid firstname
starttime address
slots joindate
recommendedby
我尝试的查询
CREATE JOIN INDEX join_memid_index FOR members JOIN bookings ON bookings.memid = members.memid
这是我在上面查询时遇到的错误
错误:“JOIN”处或附近的语法错误
第 1 行:创建 JOIN INDEX join_memid_index FOR members JOIN bookings...
^
SQL 状态:42601
字符:8
【问题讨论】:
-
加入不需要索引(用于提高性能)。 Postgresql 一直说我的代码有错误 提供完整且未更改的查询文本和完整未更改的错误消息。
-
您实际使用的是哪些 dbms?
-
如果您使用的是 postgresql,为什么要标记问题 mysql 和 sql-server?这些是不同的数据库产品
-
你从哪里得到 'CREATE JOIN INDEX' - 在 postgresql 文档 postgresql.org/docs/9.1/sql-createindex.html987654323@ 中没有提到索引创建中的加入
-
CREATE INDEX,不是CREATE JOIN INDEX。
标签: sql postgresql