
如何将mysql表行转置为列
这是我当前的mysql表的样子:PunchID EmpID PunchEvent PunchDateTime1 0456 clockin 5/14/2013 8:36:26 AM48 0456 breakout 5/14/2013 12:01:29 PM53 0456 breakin 5/14/2013 12:28:31 PM54 0456 clockout 5/14/2013 2:28:33 PM57 ...
2024-01-10
MySQL:永久设置sql_mode
通过MySQL命令行客户端,我试图设置全局mysql_mode:SET GLOBAL sql_mode = TRADITIONAL;这适用于当前会话,但是在我重新启动服务器后,sql_mode返回其默认值:’‘,一个空字符串。如何将sql_mode永久设置为TRADITIONAL?如果相关,MySQL是WAMP软件包的一部分。谢谢。回答:将此添加到您的my.cnf文件(如果使用Wind...
2024-01-10
Xml配置与基于注释的配置
在最近我从事的一些大型项目中,选择其中一种(XML或注释)似乎变得越来越重要。随着项目的发展,一致性对于可维护性非常重要。我的问题是:与基于注释的配置相比,基于XML的配置有哪些优势?与基于XML的配置相比,基于注释的配置有哪些优势?回答:注释有其用途,但它们不是杀死XML配置的...
2024-01-10
用mysql生成许多行
在postgres中,有一个内置函数generate_series()可以生成带数字的行。mysql中有功能吗?回答:试试这个:select @rownum:=@rownum+1 n, t.* from tbl t, (SELECT @rownum:=0) r order by somefield...
2024-01-10
mysql PDO如何绑定LIKE
在这个查询中select wrd from tablename WHERE wrd LIKE '$partial%'我正在尝试将变量'$partial%'与PDO 绑定。不确定最后如何处理%。可不可能是select wrd from tablename WHERE wrd LIKE ':partial%':partial绑定到哪里$partial="somet"还是会select wrd from tablename WHERE wrd LIKE ':partial':partial绑定到哪里$partia...
2024-01-10
mysql-多少列太多?
我正在建立一个可能有70列以上的表格。我现在正在考虑将其拆分,因为每次访问表时都不需要列中的某些数据。再说一次,如果我这样做,我就不得不使用联接。在什么时候(如果有的话)是否认为列太多?回答:一旦超过数据库支持的最大限制,就认为它太多了。不需要每个查询都返回所有列的...
2024-01-10
mysql“不在哪里”使用两列
我有一个包含userID和的临时表taskID。它被称为CompletedTasks。我还有另一个包含userID和的表taskID。它被称为PlannedTasks。我需要获取所有taskID已完成但尚未计划的清单。因此,我需要以某种方式从已完成的任务中清除所有行,其中都包括:PlannedTasks.userID != CompletedTasks.userID和PlannedTasks.taskID != CompletedTasks....
2024-01-10
mysql自定义排序
我有这样的查询: SELECT * FROM table WHERE id IN (2,4,1,5,3);但是,当我打印出来时,它会自动进行1,2,3,4,5的排序。我们如何在不更改数据库结构的情况下保持顺序(2,4,1,5,3)?谢谢!回答:我问这个:mysql按问题排序我得到的答案和所有功劳归于他们:您可以使用CASE运算符指定顺序:SELECT * FROM tableWHERE ...
2024-01-10
PHP mysql注入保护
我写了这个简短的函数来防止my_sql注入,因为它的重要性,我只想与其他人仔细检查这个函数是否可以按我的预期工作。foreach($_REQUEST as $key => $value) { $_REQUEST[$key] = stripslashes($value); $_REQUEST[$key] = mysql_real_escape_string($_REQUEST[$key]);}回答:好吧,您使用stripslashes()是因为magic_quotes_gpc设...
2024-01-10
理念:在mysql中
构建在多个表中的字段最佳实践我有多少条公交线路,其中在站上多条公交线路理念:在mysql中这将是摆出表的最佳途径目前,我有表1(在iPhone上的SQLite数据库)unique id | line_no | direction | etc 表2(在线MySQL的)unique id | parent_id (= unique id from table1) | lat | lng | line_no | 代替具有与同纬度& LNG的多个条目...
2024-01-10
mysql初选条件
如果主条件匹配,返回结果基于主条件,无论二级条件是否匹配,如果没有匹配结果,则返回二级条件的数据库。mysql初选条件以交换外汇为例,我有一个汇率表,我需要拿到美元汇率:英镑,如果没有,那么得到英镑汇率:美元。如果两者都有,只返还美元:英镑。id origin_currency target_currency rate_fr...
2024-01-10
MySql条件排序
我有这张桌子(简体):创建表`my_table`( `id` INT NOT NULL AUTO_INCREMENT, `item_name` VARCHAR(45)NULL, `price` DECIMAL(10,0)NULL, 主键(`id`))我需要从表中选择所有项目,并按以下方式排序:1.价格> 0.00首先的项目,按价格ASC排序2.价格= 0.00最后的项目,按ID排序我尝试了这个: 选择 * 来自my...
2024-01-10
用序列号mysql更新列
我有一个带有列的表:(这只是一个示例,我有5万条记录)Name, NumberJoe NullMichael NullMoses Null我将序列号从1-3更新为数字,因此它将如下所示:Name, NumberJoe 1Michael 2Moses 3如何在一个SQL命令中的MySQL for SQL中做到这一点回答:SET @rank:=0;update Tset Number=@rank:=@rank+1;一个陈述的另一种...
2024-01-10
MySQL列名称中的通配符
我试图从数据库中选择多个列,但不是所有列。我要选择的所有列均以“ word”开头。所以我想用伪代码做到这一点:SELECT "word%" from searchterms where onstate = 1;或多或少。我没有找到有关如何执行此操作的任何文档-MySQL中可能吗?基本上,我试图在一行中存储一个带有标识符的单词列表,并且当我提取...
2024-01-10
通过使用mysql的组总和
我有三个表financial_year,house_details,consumer_details。我需要按年份和子收入获得每个税收组的总和。我的表,查询是在这个环节:sqlfiddle通过使用mysql的组总和获得结果:Name house_number address subincome financial_year gtax htax LTAX -------------------------------------------------------------------------- Bal...
2024-01-10
如何从Mysql中分配字符?
我用下面的例子:如何从Mysql中分配字符?select '10+20+30' 和生成值:'++' 换言之,条带任何数字,并只留下痕迹。回答:功能:DROP FUNCTION IF EXISTS getMOps; DELIMITER $$ CREATE FUNCTION getMOps ( s varchar(100) ) RETURNS VARCHAR(100) DETERMINISTIC BEGIN DECLARE sOut VARCHAR(100); DECLARE theLen,iL...
2024-01-10
使用多列作为mysql的唯一标识符
我有一个包含以下各列的mysql表:group_idgame_iduser_idmessagelast_update我想使其不存在任何两行,其中行x的group_id的值等于行y的group_id的值,行x的user_id的值也等于行y的user_id的值。因此,例如,假设我插入以下值:group_id = 783game_id = 34user_id = 29237message = nonelast_update = 11233452上面的数据,即使一个mysq...
2024-01-10
在mysql表名中使用通配符
我的mysql数据库中的表名是动态生成的。有什么方法可以从名称与模式匹配的表中选择数据?我想它将看起来像:select * from 'table_id_%'回答:不,您不能使用MySQL做到这一点。无法动态指定查询中的表-您必须在应用程序中构建列表(或执行多个单表查询)。...
2024-01-10
Mysql使用通配符提高搜索性能(%%)
以下是我用于通过电子邮件搜索人的查询 SELECT * FROM phppos_customers JOIN phppos_people ON phppos_customers.person_id = phppos_people.person_id WHERE deleted = 0 AND email LIKE '%f%'ORDER BY email ASC在“电子邮件”上添加索引会加快查询速度吗?回答:不可以,因为当您使用通配符时,MySQL将无法使用该索引。如果您...
2024-01-10
转义MySQL通配符
在较旧的服务器上,我无法使用准备好的语句,因为我目前正试图在将用户输入发送到MySQL之前完全转义用户输入。为此,我正在使用PHP函数mysql_real_escape_string。由于此函数无法转义MySQL通配符%和_,因此我也正addcslashes对这些通配符进行转义。当我发送类似:test_test " '到数据库,然后再读回数据库...
2024-01-10
MySQL通配符*和%
%和*MySQL中的通配符有什么区别?在这样的查询中: "SELECT * FROM $table WHERE MATCH (message) AGAINST('$string*' INBOOLEAN MODE)"回答:*只能在全文搜索中用作通配符(或截断),而%(匹配0个或更多字符)和_(恰好匹配一个字符)仅适用于LIKE查询。...
2024-01-10
使用通配符替换的MySQL
我正在尝试编写SQL更新,以使用新字符串替换特定的xml节点:UPDATE tableSET Configuration = REPLACE(Configuration, "<tag>%%ANY_VALUE%%</tag>" "<tag>NEW_DATA</tag>");以便<root><tag>SDADAS</tag></root>变成<root><tag>NEW_DATA</tag></root>这种类型的请求缺少语法吗?回答:更新:MySQL8.0具有功能REGEX_REPLACE()...
2024-01-10
Mysqldump仅具有某些前缀的表/ Mysqldump通配符?
我有正在清理的庞大,混乱的数据库。它可以容纳500多个表,这是将Magento Enterprise和Joomla合并到一个数据库中的结果。更糟糕的是,有一组70多个Joomla表完全没有使用。这些都以开头bak_。仅删除这些bak_表将很容易,但是我想先将其“ bak”起来(看看我在那里做了什么?)。在我的脑海中,我可以想象...
2024-01-10
减去月份和日期的mysql
我需要用mysql减去1个月DATE_ADD (NOW (), - 1 MONTH)零4天,我看到命令完美适用于1个月但1个月零4天,使用31天对于每个月带来30、29、28的每月无效。我无法添加31 + 4,30 + 4,等等回答:使用DATE_SUB [docs] 像:DATE_SUB((DATE_SUB(curdate(), INTERVAL 1 MONTH)), INTERVAL 4 DAY)...
2024-01-10
从mysql表中选择特定的行
理想情况下,我需要一个等于select * from customer where row_number() = 3但这是非法的。row_number()是需要选择的行。我该怎么办?编辑:嗯,我使用iSql *plus进行练习,出于某些原因,使用limit和auto_increment是非法的。我最终创建了一个序列和一个触发器,并且每次输入一个条目时,ID都增加了1。回答:...
2024-01-10
将CSV导入mysql表
将csv文件上传到mysql表的最佳/最快方法是什么?我想将第一行数据用作列名。发现了这一点:如何将CSV文件导入MySQL表但是唯一的答案是使用GUI而不是Shell?回答:您无需编写脚本即可从CSV文件中提取信息,而是可以直接将MYSQL链接到该文件并使用以下SQL语法上传信息。要将Excel文件导入MySQL,请先将...
2024-01-10
如何杀死Mysql“显示进程列表”中的所有进程?
因为我在那里看到很多进程,所以“时间”列显示了所有这些进程的重要价值。回答:您需要一个一个地杀死它们,MySQL没有任何大量的kill命令。您可以使用任何语言编写脚本,例如在PHP中,您可以使用类似以下内容的脚本:$result = mysql_query("SHOW FULL PROCESSLIST");while ($row=mysql_fetch_array($result)) { $process...
2024-01-10
一个带有多个TIMESTAMP列的Mysql表
我想要一个有两TIMESTAMP列的表。一栏用于记录的创建时间,另一栏用于记录的修改时间。我希望这些值由数据库处理。我不想让我的应用程序层考虑一下。我知道,如果您有一个TIMESTAMP带有DEFAULT CURRENT_TIMESTAMP或的列,ON UPDATECURRENT_TIMESTAMP那么您将无法拥有另一个TIMESTAMP列。您可以使用,DATETIME但没有办...
2024-01-10
使mysql中的单个表只读
我如何才能使mysql中的单个表对某个用户只读,而该用户仍具有对同一数据库中其他表的写访问权?附加信息我有权访问服务器表是MyISAM服务器版本为5.0.51a-24 + lenny2谢谢!回答:撤销所有先前的特权,然后授予特定的新特权:REVOKE ALL ON db.table FROM user;REVOKE ALL ON db.othertable FROM user;GRANT SELECT ON db.t...
2024-01-10
在mysql表名中使用(-)破折号
我要备份数据库时出现错误A Database Error OccurredError Number: 1064You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-01-000001' at line 1SELECT * FROM temp_01-01-000001Filename: F:\x...
2024-01-10
mysql动态创建表
我在mysql上创建数据库。首先创建主体表,每个表平均有30列。日志表的标准是引用表的pk加上每列*2。像这样:Field | Type | Null | Key | Default | Extra--------+-------------+----------+---------+-------------+----------------TableID | int(11) | No | PRI | Null | a...
2024-01-10
mysql检查表的排序规则
如何查看表具有的排序规则?IE浏览器,我想看:+-----------------------------+| table | collation ||-----------------------------|| t_name | latin_general_ci |+-----------------------------+回答:SHOW TABLE STATUS 显示有关表的信息,包括排序规则。例如 SHOW TABLE STATUS where name like 'TAB...
2024-01-10
mysql创建表查询中的行大小太大错误
我正在尝试使用以下查询创建表Create Table PerformaceReport(campaignID int,keywordID bigint,keyword varchar(8000),avgPosition decimal(18,6),cost int,clicks int, conv1PerClick int, impressions int, day datetime, currency varchar(8000), account varchar(8000), timeZone...
2024-01-10
