Tag: MySQL

如何在使用LIKE通配符的列中search(不区分大小写)?

我环顾了一下,没有find我以后的事情。 SELECT * FROM trees WHERE trees.`title` LIKE '%elm%' 这工作正常,但不是如果树被命名为榆树或ELM等… 如何让这个通配符search对SQL不区分大小写? 我正在使用MySQL 5和Apache。

导入CSV到MySQL表

什么是上传一个csv文件到MySQL表的最好/最快的方式? 我想用第一行数据作为列名。 find这个: 如何导入CSV文件到MySQL表 但唯一的答案是使用GUI而不是shell?

使用LEFT JOIN在MySQL中更新多个表

我有两个表,并且想在LEFT JOIN中更新T1中所有行的字段。 举一个简单的例子,更新以下结果集的所有行: SELECT T1.* FROM T1 LEFT JOIN T2 ON T1.id = T2.id WHERE T2.id IS NULL MySQL手册指出: 多表UPDATE语句可以使用SELECT语句中允许的任何types的连接,如LEFT JOIN。 但是我无法在logging的多表UPDATE中find正确的语法。 什么是正确的语法?

哪个更快:多个单个INSERT或一个多行INSERT?

我试图优化我的代码插入到MySQL的一部分。 我应该链INSERTs使一个巨大的多行INSERT或多个单独的插入更快?

MySQL错误1153 – 获得了大于'max_allowed_pa​​cket'字节的数据包

我正在导入一个MySQL转储,并得到以下错误。 $ mysql foo < foo.sql ERROR 1153 (08S01) at line 96: Got a packet bigger than 'max_allowed_packet' bytes 显然在数据库中有附件,这使得插入非常大。 这是在我的本地机器上,一台安装有MySQL 5的MySQL的MySQL软件包。 我在哪里更改max_allowed_packet以便能够导入转储? 还有什么我应该设置? 只是运行mysql –max_allowed_packet=32M …导致相同的错误。

select一个独立的全文search服务器:Sphinx或SOLR?

我正在寻找具有以下属性的独立全文search服务器: 必须作为独立服务器运行,可以服务来自多个客户端的search请求 必须能够通过索引SQL查询的结果来执行“批量索引”:说“SELECT id,text_to_index FROM documents;” 必须是免费软件,并且必须在Linux上以MySQL作为数据库运行 必须快(排除MySQL内部全文search) 我发现有这些属性的替代品是: Solr(基于Lucene) ElasticSearch(也基于Lucene) 狮身人面像 我的问题: 他们如何比较? 我错过了其他的select吗? 我知道每个用例都是不同的,但在某些情况下我肯定不想使用某个包?

php包含错误,找不到path

我有这个小代码,实际上是一个login脚本,用来检查寄存器是否打开,并在loginbutton后显示: <?php include("../inc/db.php"); if(isset($_POST['user']) && isset($_POST['pass'])) { $password = $_POST['pass']; $username = $_POST['user']; $sql = "SELECT * FROM `users` WHERE `user` = '".$username."' AND `password` = '".$password."'"; $rez = $pdo->query($sql); if($rez->fetchColumn() > 0) { … } else {echo '<p align="center">…</p>';} } else { echo '<p align="center">…</p>'; } } ?> <table width="300" border="0" align="center" cellpadding="0" cellspacing="1" […]

为什么MySQL添加一个与SQL标准冲突的function?

我习惯于Microsoft技术,包括SQL Server。 今天我遇到了一个问题解答,其中引用了MySQL文档中的以下内容: 标准SQL将拒绝您的查询,因为您不能select聚合查询中不属于GROUP BY子句一部分的非聚合字段。 MySQL扩展了GROUP BY的使用,以便select列表可以引用未在GROUP BY子句中命名的非聚集列。 这意味着前面的查询在MySQL中是合法的。 通过避免不必要的列sorting和分组,您可以使用此function获得更好的性能。 但是,这非常有用,因为在GROUP BY中未命名的每个非聚合列中的所有值对于每个组都是相同的。 服务器可以自由select每个组的任何值,因此除非它们相同,否则所选的值是不确定的 。 这个MySQL扩展的原因是什么,如果它与SQL标准冲突?

mysql自动增加两列主键

我有多个数据库有相同的结构,其中数据有时被复制。 为了保持数据的完整性,我使用两列作为主键。 一个是数据库ID,它链接到一个关于每个数据库的信息的表。 另一个是桌子的钥匙。 它不是唯一的,因为它可能有多个行,这个值是相同的,但在database_id列中有不同的值。 我正计划把这两列变成联合主键。 不过,我也想设置表键自动增量 – 但基于database_id列。 EG,有了这个数据: table_id database_id other_columns 1 1 2 1 3 1 1 2 2 2 如果我添加包含1的dabase_id的数据,那么我希望table_id自动设置为4.如果将dabase_idinput为2,那么我希望table_id被自动设置为3等。 什么是在MySql中实现这个最好的方法。

MySQL – 两个不同数据库中的表之间的连接?

在MySQL ,我有两个不同的数据库 – 我们称它们为A和B 是否可以在数据库A中的表与数据库B的表之间执行连接?