相关疑难解决方法(0)

插入...值(SELECT ... FROM ...)

我正在尝试INSERT INTO使用另一个表的输入表.虽然这对于许多数据库引擎来说完全可行,但我似乎总是很难记住当时SQL引擎的正确语法(MySQL,Oracle,SQL Server,InformixDB2).

是否有来自SQL标准的银弹语法(例如,SQL-92)允许我插入值而不用担心底层数据库?

sql database syntax database-agnostic ansi-sql-92

1340
推荐指数
24
解决办法
243万
查看次数

加入Update的MySQL语法

我有两个看起来像这样的表

培养

+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| TrainID  | varchar(11) | NO   | PRI | NULL    |       |
| Capacity | int(11)     | NO   |     | 50      |       |
+----------+-------------+------+-----+---------+-------+
Run Code Online (Sandbox Code Playgroud)

预订

+---------------+-------------+------+-----+---------+----------------+
| Field         | Type        | Null | Key | Default | Extra          |
+---------------+-------------+------+-----+---------+----------------+
| ReservationID | int(11)     | NO   | PRI | NULL    | auto_increment |
| FirstName     | varchar(30) | NO   |     | NULL    | …
Run Code Online (Sandbox Code Playgroud)

mysql sql

74
推荐指数
2
解决办法
7万
查看次数

MySQL - 选择不在Group By中的列

我正在尝试向预先存在的应用程序添加功能,我遇到了类似这样的MySQL视图:

SELECT
     AVG(table_name.col1),
     AVG(table_name.col2),
     AVG(table_name.col3),
     table_name.personID,
     table_name.col4
FROM table_name
GROUP BY table_name.personID;
Run Code Online (Sandbox Code Playgroud)

好的,所以有一些聚合函数.您可以选择personID,因为您正在对其进行分组.但它也是选择一个不在聚合函数中的列,而不是GROUP BY子句的一部分.这怎么可能???它只是选择一个随机值,因为每个组的值绝对不是唯一的吗?

我来自哪里(MSSQL Server),这是一个错误.有人可以向我解释这种行为以及为什么它在MySQL中被允许?

mysql group-by

48
推荐指数
2
解决办法
3万
查看次数

Symfony2&Doctrine:创建自定义SQL查询

如何使用Doctrine在Symfony2中创建自定义SQL查询?或者没有学说,我不在乎.

不这样工作:

    $em = $this->getDoctrine()->getEntityManager();
    $em->createQuery($sql);
    $em->execute();
Run Code Online (Sandbox Code Playgroud)

谢谢.

php sql doctrine symfony

23
推荐指数
1
解决办法
7万
查看次数

PHP - 使用LOAD DATA INFILE将CSV文件导入mysql数据库

我有像这样的.csv文件数据

Date,Name,Call Type,Number,Duration,Address,PostalCode,City,State,Country,Latitude,Longitude
"Sep-18-2013 01:53:45 PM","Unknown","outgoing call",'123456',"0 Secs","null","null","null","null","null",0.0,0.0,,,
"Sep-18-2013 01:54:14 PM","Unknown","outgoing call",'1234567890',"0 Secs","null","null","null","null","null",0.0,0.0,,,
"Sep-18-2013 01:54:37 PM","Unknown","outgoing call",'14772580369',"1 Secs","null","null","null","null","null",0.0,0.0,,,
Run Code Online (Sandbox Code Playgroud)

我正在使用以下代码将数据插入数据库

$sql = "LOAD DATA INFILE `detection.csv`
              INTO TABLE `calldetections`
              FIELDS TERMINATED BY '".@mysql_escape_string(",").
             "` OPTIONALLY ENCLOSED BY `".@mysql_escape_string("\"").
             "` OPTIONALLY ENCLOSED BY `".@mysql_escape_string("\'").
             "` ESCAPED BY `".@mysql_escape_string("\\").
              "` LINES TERMINATED BY `".",,,\\r\\n".
             "`IGNORE 1 LINES `"

             ."(`date`,`name`,`type`,`number`,`duration`,`addr`,`pin`,`city`,`state`,`country`,`lat`,`log`)";
      $res = @mysql_query($con,$sql); 
Run Code Online (Sandbox Code Playgroud)

但没有插入; 哪里出错了?

php mysql sql csv load-data-infile

14
推荐指数
1
解决办法
6万
查看次数