Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Closed 9 years ago.
Improve this question
I'm trying to replace the first instance of a NULl or ' ' value in a column with another value. But only the first instance and nothing else.
So far I've put this together:
UPDATE table_name SET column = CONCAT(REPLACE(LEFT(column , INSTR(column , '')), '', 'new_value'), SUBSTRING(column , INSTR(column , '') +1))
I could replace all the values but I don't want that:
UPDATE table_name SET column = REPLACE (column , 'old_value', 'new_value')
Just try using limit 1
UPDATE table_name SET column='new_value' WHERE column='' limit 1
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Closed 9 years ago.
Improve this question
I am trying to show all user information held in a db.
SELECT * FROM member
However i do not want it to select the current user (find by personID)
Is there a way to say select all but not personID XXXX?
Thanks
Use <> or != as an not equal to operator.
SELECT * FROM member WHERE personID <> 123;
SELECT * FROM member WHERE personID != 123;
If you want to exclude multiple IDs:
SELECT * FROM member WHERE personID NOT IN (1,2,3);
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Closed 8 years ago.
This question appears to be off-topic because it lacks sufficient information to diagnose the problem. Describe your problem in more detail or include a minimal example in the question itself.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Improve this question
How should I make a sql update query only IF a value of the table is equal to "something"?
I would not want to use case because I don't have any "else" statement and it is regulated by another simple value of the table, so there are no more cases.
EDIT: Since there is so much need to see one single line of code because certainly my question has no answer this way, I'll leave it here:
$query = "IF seen=1 UPDATE something SET other_thing = 100 WHERE yet_another_thing= 'outro' ";
You use a where statement:
update t
set foo = bar
where value = 'something';
Looking at everyone's answers, here is the code for YOU.
$query = "UPDATE something SET other_thing = 100 WHERE yet_another_thing= 'outro' AND seen = 1";
This is where use use a WHERE clause:
UPDATE
SomeTable
SET
field = 1234
WHERE
anotherField = 5678
UPDATE tablename SET updatevalue = 'value' WHERE avalue = 'something'
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Closed 9 years ago.
Improve this question
I need to create tag system for my article. now I have this input with comma separated :
trance, house, electronica, dubstep, club
now I need to INSERT this tags To Tags Table Like This:
ID NAME ArticleId
1 trance 10
2 house 10
3 electronica 10
4 dubstep 10
5 garage 10
And How to Fetch, INSERT, DELETE , UPDATE This tags?!
For FETCH using Group Contact
SELECT GROUP_CONCAT(NAME) As tags FROM table_name WHERE ArticleId= 10;
will return like
trance, house, electronica, dubstep, club
for DELETE use simple delete query
DELETE FROM table_name WHERE name = 'trance'
Also for UPDATE query you can use like below
UPDATE table_name SET name = 'trance' WHERE ID = 1
EDIT
Use INSERT query
foreach($tag as $each_tag) {
INSERT INTO table_name (ID, NAME, ArticleId)
VALUES (1, '.$each_tag.', 10);
}
above is just skeleton map with your original code.
hope this will sure help you.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Closed 9 years ago.
Improve this question
I'm trying to let users insert a subject to an image. I know I can't use a WHERE clause in combination with an INSERT INTO statement, and I know that I should use SELECT. I am very new to mysql and I didn't understand the results I tried to search on google. So I needed a more specific answer;)
$classed = mysql_query("INSERT INTO images (subject) VALUES ('$_POST[subject]') WHERE image_id='$_POST[id]'");
You can't use WHERE in your INSERT statement. Consider trying UPDATE if you want to update existing rows, or INSERT without the WHERE to insert new rows.
Don't use the mysql_query function, as it deprecated. Try using PDO or mysqli_query instead.
Don't ever use unfiltered input in your query.
if you already have image_id value then you should UPDATE your table not INSERT.
you should escape your variables before inserting them in your table. by
mysql_real_escape_string()
try this:
$subject = mysql_real_escape_string($_POST['subject']) ;
$id =mysql_real_escape_string($_POST['id'] ) ;
$classed = mysql_query("UPDATE images
SET subject = '".$subject."'
WHERE image_id='".$id."' ");
You cannot use INSERT in existing rows, try UPDATE the SQL will be something like
UPDATE images SET subject = '...' WHERE id=x;
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking for code must demonstrate a minimal understanding of the problem being solved. Include attempted solutions, why they didn't work, and the expected results. See also: Stack Overflow question checklist
Closed 9 years ago.
Improve this question
I have a db table with more than one rows for a same ID filed, with another field STATUS (may be 1 or 0). I want to get the status as 1 if all the STATUS is 1 for a particular ID else 0 if any one STATUS is 0(zero)
You can use MySQL's MIN() function:
For a particular ID:
SELECT MIN(STATUS) FROM my_table WHERE ID = ?
For all ID:
SELECT ID, MIN(STATUS) FROM my_table GROUP BY ID