SQLite: Support a parenthesized table name in `FROM`
diff --git a/src/dialect/mod.rs b/src/dialect/mod.rs
index d8f93e4..0ef6f21 100644
--- a/src/dialect/mod.rs
+++ b/src/dialect/mod.rs
@@ -1189,7 +1189,8 @@
     /// SELECT * FROM (mytable) AS alias;
     /// ```
     ///
-    /// [Snowflake](https://docs.snowflake.com/en/sql-reference/constructs/from)
+    /// [Snowflake](https://docs.snowflake.com/en/sql-reference/constructs/from),
+    /// [SQLite](https://www.sqlite.org/syntax/table-or-subquery.html)
     fn supports_parens_around_table_factor(&self) -> bool {
         false
     }
diff --git a/src/dialect/sqlite.rs b/src/dialect/sqlite.rs
index 4976395..f63e4cb 100644
--- a/src/dialect/sqlite.rs
+++ b/src/dialect/sqlite.rs
@@ -142,4 +142,8 @@
     fn supports_national_string_literal(&self) -> bool {
         false
     }
+
+    fn supports_parens_around_table_factor(&self) -> bool {
+        true
+    }
 }
diff --git a/tests/sqlparser_sqlite.rs b/tests/sqlparser_sqlite.rs
index ade2d9d..2e60c75 100644
--- a/tests/sqlparser_sqlite.rs
+++ b/tests/sqlparser_sqlite.rs
@@ -1117,6 +1117,31 @@
     }
 }
 
+#[test]
+fn parse_parenthesized_table_factor() {
+    for (sql, canonical) in [
+        ("SELECT * FROM (t)", "SELECT * FROM t"),
+        ("SELECT * FROM ((t))", "SELECT * FROM t"),
+        ("SELECT * FROM (t) AS a", "SELECT * FROM t AS a"),
+        ("SELECT * FROM (t AS a)", "SELECT * FROM t AS a"),
+        (
+            "SELECT * FROM ((SELECT 1) AS s)",
+            "SELECT * FROM (SELECT 1) AS s",
+        ),
+        ("SELECT * FROM f(), (t)", "SELECT * FROM f(), t"),
+    ] {
+        sqlite_and_generic().one_statement_parses_to(sql, canonical);
+    }
+
+    assert_eq!(
+        all_dialects_where(|d| !d.supports_parens_around_table_factor())
+            .parse_sql_statements("SELECT * FROM (t)"),
+        Err(ParserError::ParserError(
+            "Expected: joined table, found: )".to_string()
+        ))
+    );
+}
+
 fn sqlite() -> TestedDialects {
     TestedDialects::new(vec![Box::new(SQLiteDialect {})])
 }