草庐IT

unique_schema_migrations

全部标签

具有条件的MySQL UNIQUE约束

我正在尝试为具有以下条件的两列(id_1和id_2)创建唯一索引约束:如果两个不同的行在id_2列中具有相同的值,则它们在id_1列中的值也必须相同。这可能吗?谢谢。 最佳答案 没有声明性约束来支持这种限制。您描述的场景不满足唯一约束的要求。(您可以创建约束,但您将无法添加id_1和id_2具有相同值的多行。如果您的意图是拒绝基于此限制的插入或更新,您可以使用行级触发器来完成此操作。 关于具有条件的MySQLUNIQUE约束,我们在StackOverflow上找到一个类似的问题:

php - MYSQL RANDOM SELECT UNIQUE ROWS - 排除先前选择的行

我有一个包含16K条目的表我要随机抽取44个条目但我不想重复相同的条目不止一次(永远)所以我有一个每用户列表,将已使用的“ID”作为逗号分隔的字符串保存在表中。我使用该列表来SELECT...NOTIN(used_IDs)问题是这个列表变得太大,我相信由于大小而sql调用失败知道如何更有效地做到这一点吗?Questionstable:+------+-------+-------+|id|Qtext|Tags|+------+-------+-------+Testtable:+------+-------+|id|QIDs|+------+-------+Resultstable:+

每次查询时出现 MySQL 错误 1055 information_schema.PROFILING.SEQ

我正在使用安装在Ubuntu14.04上的mysql存储库中最近安装的mysql。我运行的每个查询都会导致以下错误,而且我无法通过谷歌或此处找到任何对此进行讨论的内容。例如,此(显然仅用于演示目的)查询返回以下内容:[SQL]选择*从tabc位置受影响的行:0时间:0.705s[Err]1055-ORDERBY子句的表达式#1不在GROUPBY子句中并且包含非聚合列“information_schema.PROFILING.SEQ”,它在功能上不依赖于GROUPBY子句中的列;这与sql_mode=only_full_group_by不兼容它会很好地返回查询结果,但会在每次查询时抛出错

mysql - 如何在不重启 MySQL 的情况下刷新 performance_schema 统计信息?

我知道性能模式中的统计数据在MySQL重启后不会持久存在。我想在不重新启动MySQL的情况下刷新所有统计信息。有什么办法吗?谢谢。 最佳答案 比截断每个单独的表更容易的是调用过程:CALLsys.ps_truncate_all_tables(FALSE);MySQL5.7ReferenceManual 关于mysql-如何在不重启MySQL的情况下刷新performance_schema统计信息?,我们在StackOverflow上找到一个类似的问题: htt

mysql - SQL 查询 : Retrieve rows that have an entry for every unique value of a column

背景:我在三个不同的时间对不同的元素进行了价格搜索。这些搜索及其相应的搜索时间、对象名称和价格保存在一个表中。我想比较一段时间内元素的价格,但我只想在所有三个搜索中提取有价格或可用的元素。换句话说,我想按产品查询所有时间段内的价格,但前提是该产品有所有时间段的价格(而且我不知道提前有多少个时间段——这必须确定从表动态)。我的计划是为此使用SQL(第一次尝试SQL...可能不适合此任务?)示例数据:+----------+----------+----------+----------+|Time|Item|Price|Dummy|+----------+----------+-----

mysql - 如何通过组合电子邮件和日期来获取 "unique"用户

我正在使用Laravel5.5。我有一个包含用户的数据库。问题是一些用户因为错误存在不止一次。我想查询我的数据库并选择所有“唯一”用户。通过使用“独特”这个词,我的意思是:如果电子邮件为"test@test.com"的用户存在50次,我想要created_at最接近的行>现在。我的返回所有用户的查询如下:DB::table('users')->select('name','surname','email','phone','answers','newsletter','created_at')->get();我很困惑,不确定是否应该使用limit将其与orderbycreated_at

sql - (MySQL : Select 20 latest entries in logfile from unique persons

我有一个日志文件,用于记录各种表的插入/删除/更新。我想了解一下最近20个人的概况,这些人记录了更新的位置,按上次更新日期时间DESC排序我现在拥有的是:SELECTDISTINCTlogfile.idvalue,DATE_FORMAT(logfile.logDateTime,'%d-%m-%Y%H:%i')ASthedatetime,CONCAT_WS('',people.peopleSurname,people.peopleLastname)ASpeopleNameFROMlogfile,peopleWHERE0=0ANDlogfile.tablename='people'ANDl

mysql - 可以在不移动 Information_Schema 的情况下移动我的 MySQL 数据库吗?

我正在将我所有的网站移动到一台服务器上,我想知道是否可以省略information_schema,因为我有多个来自不同服务器的不同网站。 最佳答案 information_schema是一个用于查询数据库元数据的虚拟数据库。您不必移动它,那里的数据是从您的其他数据库自动生成的。 关于mysql-可以在不移动Information_Schema的情况下移动我的MySQL数据库吗?,我们在StackOverflow上找到一个类似的问题: https://stack

Mysql 还原以还原结构并且没有来自给定备份的数据 (schema.sql)

您好,我使用mysql管理员并已恢复备份文件(backup.sql)。我想在没有数据的情况下使用恢复结构,但它没有给我这样做的选择。我知道phpadmin提供了这个。但是我不能使用它。谁能告诉我一个简单的方法? 最佳答案 仅转储数据库结构:catbackup.sql|grep-v^插入|mysql-u$USER-p这将执行backup.sql文件中的所有内容,除了将填充表的INSERT行。运行此命令后,您应该拥有完整的表结构以及原始数据库中的任何存储过程/View/等,但您的表将全部为空。

mysql - 只为一个 Bundle 创建的 Doctrine Schema

我如何告诉Symfony只为一个Bundle生成表?每次我创建一个包并运行时:phpapp/consoledoctrine:schema:create它在我当前的(特定包的)数据库上创建我所有包中的所有表。我不需要那个。 最佳答案 创建新包时,只需使用app/consoledoctrine:schema:update因为您的模式已经存在。 关于mysql-只为一个Bundle创建的DoctrineSchema,我们在StackOverflow上找到一个类似的问题: