Questions tagged «mysql»

MySQL是使用结构化查询语言(SQL)的免费,开放源代码关系数据库管理系统(RDBMS)。请勿将此标签用于其他数据库,例如SQL Server,SQLite等。那些是不同的数据库,它们都使用自己的SQL方言来管理数据。

6
MySQL中给定子字符串的最后一个索引
我们可以使用以下INSTR()函数在MySQL中找到给定子字符串首次出现的索引。 SELECT instr('Have_a_good_day', '_') AS index_position 它会显示5指定子字符串的第一次出现,在此情况下为下划线_。 我需要获取给定字符(或子字符串)的最后一次出现,类似于lastIndexOf(String str)String类的Java方法,但是我找不到MySQL中的任何内置函数。 在MySQL中是否有任何内置功能可实现此目的?

10
在联接表上使用LIMIT 1的MySQL JOIN
我想联接两个表,但是在table1上每个记录仅获得1条table2记录 例如: SELECT c.id, c.title, p.id AS product_id, p.title FROM categories AS c JOIN products AS p ON c.id = p.category_id 这将使我获得所有记录products,这不是我想要的。我希望每个类别有1个[第一个]产品(我sort在产品字段中有一个列)。 我该怎么做呢?
70 mysql  join  limit 


13
如何在MySql的DATETIME字段的日期部分创建索引
如何在DATETIME字段的日期部分创建索引? mysql> SHOW COLUMNS FROM transactionlist; +-------------------+------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------------+------------------+------+-----+---------+----------------+ | TransactionNumber | int(10) unsigned | NO | PRI | NULL | auto_increment | | WagerId | int(11) | YES | MUL | 0 | | | TranNum | …
70 mysql 

2
在MySQL查询中结合UNION和LIMIT操作
我有一个“工作”和“公司”表,我想提取20个满足以下条件的工作: 仅来自两(2)个具名公司的职位 每个公司最多可以有10个工作 我曾尝试以下SELECT同UNION DISTINCT,但问题是,LIMIT 0,10适用于整个结果集。我希望它适用于每个公司。 如果每个公司没有10个工作,则查询应返回找到的所有工作。 SELECT c.name, j.title, j.`desc`, j.link FROM jobs_job j INNER JOIN companies_company c ON j.company_id = c.id WHERE c.name IN ('Company1') UNION DISTINCT SELECT c.name, j.title, j.`desc`, j.link FROM jobs_job j INNER JOIN companies_company c ON j.company_id = c.id WHERE c.name IN ('Company2') ORDER …
70 mysql  sql  union  limit 

7
无法使用旧的身份验证连接到MySQL 4.1+
我正在尝试连接到http://bluesql.net上的mySQL数据库,但是当我尝试连接时,出现此错误: Connect Error (2000) mysqlnd cannot connect to MySQL 4.1+ using old authentication 我已经研究过了,它与MySQL 4.1之前使用的一些旧密码方案有关。较新的版本可以选择使用旧密码,我读过此密码可能会导致此问题。 我正在运行php 5.3,并与mySQLi(新的mysqli(...))连接。我希望我可以在代码中做一些事情以连接到bluesql.net上的数据库-显然我不控制如何设置他们的数据库。降级php版本不是一种选择。 谁有想法?


8
数据库/ SQL:如何存储经度/纬度数据?
性能问题... 我有一个具有地理位置数据(经度和纬度)的房屋数据库。 我想做的就是找到使用InnoDB数据库引擎将位置数据存储在MySQL(v5.0.24a)中的最佳方法,这样我就可以执行很多查询,以返回介于两者之间的所有主记录。 x1和x2latitude以及y1和y2 longitude。 现在,我的数据库架构是 --------------------- Homes --------------------- geolat - Float (10,6) geolng - Float (10,6) --------------------- 我的查询是: SELECT ... WHERE geolat BETWEEN x1 AND x2 AND geolng BETWEEN y1 AND y2 我上面描述的是使用Float(10,6)在MySQL中存储经度和纬度数据并分离出经度/纬度的最佳方法吗?如果没有,那是什么?存在浮点数,小数甚至空间作为数据类型。 从性能的角度来看,这是执行SQL的最佳方法吗?如果没有,那是什么? 使用其他MySQL数据库引擎有意义吗? 更新:仍然没有答案 我在下面有3个不同的答案。一个人说要用Float。一个人说要用INT。一个人说要用Spatial。 因此,我使用MySQL的“ EXPLAIN”语句来衡量SQL的执行速度。如果对经度和纬度数据类型使用INT或FLOAT,则似乎在SQL执行(结果集获取)方面绝对没有区别。 看起来使用“ BETWEEN”语句比使用“ >”或“ <” SQL语句快得多。使用“ BETWEEN”比使用“ >”和“ <”语句快将近3倍。 话虽如此,我仍然不确定使用Spatial会对性能产生什么影响,因为我不清楚我的MySQL版本(v5.0.24)是否支持它,以及如何启用它(如果支持) 。 …

6
JDBC批处理插入性能
我需要将几亿条记录插入mysql db。我要一次插入一百万个。请在下面查看我的代码。它似乎很慢。有什么方法可以优化它吗? try { // Disable auto-commit connection.setAutoCommit(false); // Create a prepared statement String sql = "INSERT INTO mytable (xxx), VALUES(?)"; PreparedStatement pstmt = connection.prepareStatement(sql); Object[] vals=set.toArray(); for (int i=0; i<vals.length; i++) { pstmt.setString(1, vals[i].toString()); pstmt.addBatch(); } // Execute the batch int [] updateCounts = pstmt.executeBatch(); System.out.append("inserted "+updateCounts.length);

8
安装MySQL-python
尝试在Ubuntu / Linux Box上安装MySQL-python时出现以下故障,下面是问题所在,sh: mysql_config: not found 有人可以建议我怎么做吗? rmicro@ubuntu:~$ pip install MySQL-python Downloading/unpacking MySQL-python Downloading MySQL-python-1.2.3.tar.gz (70Kb): 70Kb downloaded Running setup.py egg_info for package MySQL-python sh: mysql_config: not found Traceback (most recent call last): File "<string>", line 14, in <module> File "/home/rmicro/build/MySQL-python/setup.py", line 15, in <module> metadata, options = get_config() …
69 python  mysql 

9
Pentaho数据集成SQL连接
我正在使用Pentaho数据集成,并且尝试通过MySQL连接到我的数据库,但是当我收到此错误时... Error connecting to database [devdb2] : org.pentaho.di.core.exception.KettleDatabaseException: Error occured while trying to connect to the database Exception while loading class org.gjt.mm.mysql.Driver org.pentaho.di.core.exception.KettleDatabaseException: Error occured while trying to connect to the database Exception while loading class org.gjt.mm.mysql.Driver at org.pentaho.di.core.database.Database.normalConnect(Database.java:368) at org.pentaho.di.core.database.Database.connect(Database.java:317) at org.pentaho.di.core.database.Database.connect(Database.java:279) at org.pentaho.di.core.database.Database.connect(Database.java:269) at org.pentaho.di.core.database.DatabaseFactory.getConnectionTestReport(DatabaseFactory.java:86) at org.pentaho.di.core.database.DatabaseMeta.testConnection(DatabaseMeta.java:2464) at …
69 mysql  pentaho 

4
MySQL ORDER BY IN()
我有一个带有ID编号的PHP数组。这些号码已经订购。 现在,我想通过IN()方法获取我的结果,以获取所有ID。 但是,这些ID的排序应类似于IN方法。 例如: IN(4,7,3,8,9) 应该给出如下结果: 4 - Article 4 7 - Article 7 3 - Article 3 8 - Article 8 9 - Article 9 有什么建议?也许有一个功能可以做到这一点? 谢谢!

5
更新MySQL中的列
我有一个table1具有三列和一堆行的表: [key_col|col_a|col_b] 我想用一组值更新col_a(即保持col_b不变),像这样: INSERT INTO table1 AS t1 (key_col, col_a) VALUES ("k1", "foo"), ("k2", "bar"); 但这不起作用,我该怎么做?

2
如果存在PHP MYSQL UPDATE或不存在INSERT?
我不知道这是否真的正确。我有一个类,如果这些字段当前存在,我想在其中更新数据库,如果不存在则插入。复杂的是,我正在联接3个表(set_colors,school_art,baseimage) 任何帮助都将非常棒。 这是我所拥有的: public function set_layer_colors($value) { global $db; $result_array = mysql_query(" IF EXISTS(SELECT * FROM set_colors WHERE school_art_id = '{$value}') UPDATE set_colors (school_art_id, baseimage_id, sub_folder, layer) SELECT school_art.id, baseimage.id, baseimage.sub_folder, baseimage.layer FROM school_art JOIN baseimage ON baseimage.base_folder = school_art.series_code WHERE baseimage.image_type = 'B' ORDER BY school_art.id ELSE INSERT INTO …
69 php  mysql 

6
Django“无法添加或更新子行:外键约束失败”
我有一个模型Coupon,以及模型Photo与ForeignKey它: class Photo(models.Model): coupon = models.ForeignKey(Coupon, related_name='description_photos') title = models.CharField(max_length=100) image = models.ImageField(upload_to='images') 我在管理员中设置了内联,因此现在我可以从管理员将照片添加到优惠券中。 我尝试添加一个,并且上传成功,但是随后出现此错误的是Django的调试页面: IntegrityError at /admin/coupon/coupon/321/ (1452, 'Cannot add or update a child row: a foreign key constraint fails (`my_project`.`coupon_photo`, CONSTRAINT `coupon_id_refs_id_90d7f06` FOREIGN KEY (`coupon_id`) REFERENCES `coupon_coupon` (`id`))') 这是什么,我该如何解决? (如果重要,这是一个MySQL数据库。) 编辑:我在具有稍微不同的数据集的Sqlite3数据库上尝试过它,并且它起作用了,所以也许在当前的DB中有松散的数据?如何找到并删除它?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.