运行 "Select * From tableName" 查询使用 MySQL/OTP,没有 'WHERE'
Running a "Select * From tableName" query using MySQL/OTP, with no 'WHERE'
This Driver 允许您在 Erlang 程序中调用 mysql 数据库。
他们为 "Multiple Query and Multiple Result sets"
提供了示例
{ok, [{[<<"foo">>], [[42]]}, {[<<"bar">>], [[<<"baz">>]]}]} =
mysql:query(Pid, "SELECT 42 AS foo; SELECT 'baz' AS bar;"),
但不要真正解释它,或者在没有 AS
的情况下展示如何使用它
我想执行类似
的查询
{ok, [{[<<Latitude>>, [Longitude], [Image], [Username], [Bio]} = mysql:query(Db, "SELECT * FROM users",[])
这是我的常客select * from users
mysql> select * 来自用户;
+----------+-----------+-------+----------+-----------+
| latitude | longitude | image | username | bio |
+----------+-----------+-------+----------+-----------+
| 44 | 44 | 45 | Sally | Hello |
| 42 | 43 | 0 | Bryce | I'm me |
| 20 | 24 | 0 | Richard | I'm Great |
| 44 | 45 | 0 | Liz | Yeah |
+----------+-----------+-------+----------+-----------+
所以我希望第一列存储在变量纬度中,第二列存储在经度中.....
来自图书馆的例子:
%% Select
{ok, ColumnNames, Rows} =
mysql:query(Pid, <<"SELECT * FROM mytable WHERE id = ?">>, [1]),
您应该可以使用以下查询来完成,只需 2 params on the query function call:
{ok, [<<"latitude">>, <<"longitude">>, <<"image">>, <<"username">>, <<"bio">>], Rows}
= mysql:query(Pid, <<"SELECT * FROM users">>),
其中 Rows
是这样的(基于您发布的 table):
[
[44, 44, 45,<<"Sally">>, <<"Hello">>],
[42, 43, 0,<<"Bryce">>, <<"I'm me">>],
[20, 24, 0,<<"Richard">>, <<"Hello">>],
[44, 45, 0,<<"Liz">>, <<"Yeah">>]
]
上述结构中的每个列表项都是来自您的数据库 table 的一行,字段值的顺序与您的 select 请求它的顺序相同(您可以从 ColumnNames
列表)。您可以使用此列表将其转换为您可能需要的任何其他结构。
This Driver 允许您在 Erlang 程序中调用 mysql 数据库。
他们为 "Multiple Query and Multiple Result sets"
提供了示例{ok, [{[<<"foo">>], [[42]]}, {[<<"bar">>], [[<<"baz">>]]}]} =
mysql:query(Pid, "SELECT 42 AS foo; SELECT 'baz' AS bar;"),
但不要真正解释它,或者在没有 AS
我想执行类似
的查询{ok, [{[<<Latitude>>, [Longitude], [Image], [Username], [Bio]} = mysql:query(Db, "SELECT * FROM users",[])
这是我的常客select * from users
mysql> select * 来自用户;
+----------+-----------+-------+----------+-----------+
| latitude | longitude | image | username | bio |
+----------+-----------+-------+----------+-----------+
| 44 | 44 | 45 | Sally | Hello |
| 42 | 43 | 0 | Bryce | I'm me |
| 20 | 24 | 0 | Richard | I'm Great |
| 44 | 45 | 0 | Liz | Yeah |
+----------+-----------+-------+----------+-----------+
所以我希望第一列存储在变量纬度中,第二列存储在经度中.....
来自图书馆的例子:
%% Select
{ok, ColumnNames, Rows} =
mysql:query(Pid, <<"SELECT * FROM mytable WHERE id = ?">>, [1]),
您应该可以使用以下查询来完成,只需 2 params on the query function call:
{ok, [<<"latitude">>, <<"longitude">>, <<"image">>, <<"username">>, <<"bio">>], Rows}
= mysql:query(Pid, <<"SELECT * FROM users">>),
其中 Rows
是这样的(基于您发布的 table):
[
[44, 44, 45,<<"Sally">>, <<"Hello">>],
[42, 43, 0,<<"Bryce">>, <<"I'm me">>],
[20, 24, 0,<<"Richard">>, <<"Hello">>],
[44, 45, 0,<<"Liz">>, <<"Yeah">>]
]
上述结构中的每个列表项都是来自您的数据库 table 的一行,字段值的顺序与您的 select 请求它的顺序相同(您可以从 ColumnNames
列表)。您可以使用此列表将其转换为您可能需要的任何其他结构。