SQLite - 左连接

标签 sqlite

我需要这样查询:

SELECT table1.*, table2.column 
FROM table1 
LEFT JOIN table2 ON table1.column = table2.column

但它不起作用。如果我尝试相同的查询但替换第一部分 -->

SELECT table1.column, table2.column 
FROM table1 
LEFT JOIN table2 ON table1.column = table2.column

它工作正常。我需要从 table1 中取出所有列。我怎样才能在不指定所有这些的情况下做到这一点?

最佳答案

如果 table1table2 中的列名相同,这里是不指定 table1 的所有列名的解决方案:

SELECT table1.*, table2.column as my_column_name_no_in_table1
FROM table1 
LEFT JOIN table2 ON table1.column = table2.column

如果table1table2的列名都不一样,可以使用:

SELECT table1.*, table2.*
FROM table1 
LEFT JOIN table2 ON table1.column = table2.column

但如 peterm 中所述的评论,这不是生产中的好习惯。现在,随心所欲! ;)

关于SQLite - 左连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19635387/

相关文章:

sqlite - 如何在 Clojure 中访问 SQLite 数据库?

sql - 如何将该txt文件导入到SqlLiteStudio中的数据库表中

database - sqlite - 如何在插入语句中转义字符串中的分号

ios - 插入 SQLite 数据库

database - 数据库的 Post、ApplyUpdates 和 Commit 之间有什么区别?

python - ( "SELECT password FROM peerlist WHERE username=?",用户名1)

sql - 创建一个 shell 脚本来修改和/或在 firefox 中创建书签

sql - 访问 View 中子查询中的值

c# - SQLite 未在 MonoDroid 和 MonoTouch 上正确存储 GUID 值

Android 应用程序在 SQLite 数据库插入时卡住