有关出现问题的系统的信息:
操作系统:Debian8.1 64位- MySQL版本: 5.5.44 - GCC: 4.9.2
我正在创建一个简单的UDF函数,它将返回字符串Hello。问题是,它将返回Hello,连接到它,有一个长的随机二进制字符串,具有可变大小的随机数据,这将从执行到执行。
hello_world.c
#ifdef STANDARD
/* STANDARD is defined,
don't use any mysql functions */
#include <stdlib.h>
#include <stdio.h>
#include &
查询车站非元音结尾的城市名称列表。您的结果不能包含重复项(MySQL)
输入格式
站台表说明如下:
其中LAT_N是北纬,LONG_W是西经
我已经编写了这些简单的查询:
SELECT DISTINCT(CITY)
FROM STATION
WHERE SUBSTRING(CITY,-1) NOT IN ('A','E','I','O','U')
和
SELECT DISTINCT(CITY)
FROM STATION
WHERE SUBSTRING(CITY,-1,1) NOT IN ('A
我有一个表,看起来像这样:
+-------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+------------------+------+-----+---------+----------------+
| id | int(11) unsigned | NO | PRI | NULL | auto_increment |
| name |
我正在尝试获取字符串的中间部分。我的表格如下:
id machine model
1 lathe ISO-678-1567
我想要像678这样的机器模型的中间部分。
描述输出:
id machine model midcode
1 lathe ISO-678-1567 678
目前,我正在用PHP codwe做同样的事情。但我认为用Mysql查询本身会更好。请帮帮我怎么做?
我有一个使用整数作为id的表。我需要将其更改为字符串,并在所有小于4的条目前加上零。数据库是MySql。我将字段转换为VARCHAR(6),但不需要将列中的数据转换为前缀。我尝试了以下代码,但它没有更新任何行。对我所做的错事有任何帮助将不胜感激。
UPDATE clients
SET clientId =
CASE
WHEN char_length(clientId) = 1 THEN '000' + clientId
WHEN char_length(clientId) = 2 THEN '00' + clientId
W
嗨,这是我要查询的桌子:
mytable
id, name
1,name1
2,name2
3,' ' //this is a white space
4,null
但是,当我使用此查询将空列设置为null时:
update mytable set `name`= CASE `name` WHEN '' THEN NULL ELSE `name` END;
它甚至更新包含空间的列字段。结果是:
1,name1
2,name2
3,null
4,null
为什么mysql把空白也当作'‘空白?是否有任何选项将表中的空白替换为null,并让空白空间成为空白?
我试图用这样的方式实现MYSQL函数MY_LEFT_STR(字符串x,INT位置)
MY_LEFT_STR('HELLO',4) =>返回“地狱”(与内部左派function)MY_LEFT_STR('HELLO',-1相同) =>返回“地狱”
DROP FUNCTION IF EXISTS MY_LEFT_STR;
CREATE FUNCTION MY_LEFT_STR(
in_str VARCHAR(255),
pos INT
)
RETURNS VARCHAR(255)
BEGIN
IF (pos < 0) THEN
在MySQL中,有没有办法根据列的长度(字符)对结果进行排序?
例如:
myColumn
________________
lor
lorem
lorem ip
lorem ips
lorem ipsum
我希望按照最小的列长度对结果进行排序,首先是"lor",最后是最大的列长度"lorem ipsum“。这也应该包括0的列长度。
感谢收到的任何建议。
使用SQL,我希望搜索和检索前面有一个已知子字符串“XX”的子字符串。以“”或“”结尾。
例如,如果以CONTOOOH 788 XX. 3C, MNOP开头,则需要提取值3C
我试过使用子字符串(输入、位置、len),但是不确定len的标准,因为len是不同的。
select substring(input, position("XX." in input)+4, **???**)
from tables
where input like '%XX.%';
我正在使用MySQL。
Input
CONTOH LALALA 12 XX. 1 AB
我在将动态SQL查询/行数据转换为列名时遇到了一个小/大问题。我有这个链接:
但是如果我添加更多的数据,查询就不起作用了。我收到错误:
You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near 'FROM test
GROUP BY nid' at line 2
我的数据库现在很大。在接下来的几天里,我创建了一个空的数据库。我添加了名称(另一个表,连接id到"
下面有一个表,我的问题是如何根据参数更新mysql中的列。
+---+------------+-------------+
| id| A | B |
+---+------------+-------------+
| 1 | a b a a | |
| 2 | b c a | |
| 3 | b d c | |
| 4 | a | |
+---+------------+-------------+
预期结果应计
MySQL语句
mysql> select * from field where dflt=' '
似乎与空值匹配;并且与语句不同
mysql> select * from field where concat('_',dflt,'_') = '_ _';
我在MySQL参考中找不到对此行为的描述。如何让MySQL按字面意思解释输入?
编辑:这确实不会匹配空值,但它确实匹配空值。