[MDEV-8170] String access operator [] Created: 2015-05-17  Updated: 2015-10-17

Status: Open
Project: MariaDB Server
Component/s: Character Sets, Data Manipulation - Update
Fix Version/s: None

Type: Task Priority: Minor
Reporter: Mikle Assignee: Unassigned
Resolution: Unresolved Votes: 4
Labels: None

Issue Links:
Relates
relates to MDEV-6121 Add support for arrays in tables Open

 Description   

I propose to introduce a new operators [pos] and [pos:len] to access elements of string types. Where pos - element index, starting from 0, as in c++ stings. Example:

mysql> CREATE TABLE `test` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `data` varchar(100) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB;
 
mysql> INSERT INTO `test` (`id`,`data`) VALUES(0,'');
mysql> UPDATE `test` SET `data`[5] = 'xxx';
 
mysql> SELECT * FROM `test` WHERE `id`=0;
+-----+----------------------------+
| sid | data                       |
+-----+----------------------------+
|   0 | '     xxx'
+-----+----------------------------+
 
mysql> UPDATE `test` SET `data`[3] = 'aaa';
 
mysql> SELECT * FROM `test` WHERE `id`=0;
+-----+----------------------------+
| sid | data                       |
+-----+----------------------------+
|   0 | '   aaaxx'
+-----+----------------------------+
 
mysql> UPDATE `test` SET `data`[3:1] = 'bbbbbb';
 
mysql> SELECT * FROM `test` WHERE `id`=0;
+-----+----------------------------+
| sid | data                       |
+-----+----------------------------+
|   0 | '   baaxx'
+-----+----------------------------+
 
mysql> SELECT `data`[4:3] FROM `test` WHERE `id`=0;
+----------------------------+
| data                       |
+----------------------------+
| 'aax'
+----------------------------+



 Comments   
Comment by Genry Uncij (Inactive) [ 2015-06-16 ]

Complete description in MySQL bug tracker: http://bugs.mysql.com/bug.php?id=77346

Generated at Thu Feb 08 07:25:09 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.