GORM 'NOT IN' subquery
up vote
0
down vote
favorite
I want to execute a subquery like:
SELECT id, col1, col2 FROM table1 WHERE col1='val1' and col2 NOT IN (
SELECT ID FROM table2 WHERE col1='val1' and col3 = 'val3')
How can I use GORM to execute it?
add a comment |
up vote
0
down vote
favorite
I want to execute a subquery like:
SELECT id, col1, col2 FROM table1 WHERE col1='val1' and col2 NOT IN (
SELECT ID FROM table2 WHERE col1='val1' and col3 = 'val3')
How can I use GORM to execute it?
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I want to execute a subquery like:
SELECT id, col1, col2 FROM table1 WHERE col1='val1' and col2 NOT IN (
SELECT ID FROM table2 WHERE col1='val1' and col3 = 'val3')
How can I use GORM to execute it?
I want to execute a subquery like:
SELECT id, col1, col2 FROM table1 WHERE col1='val1' and col2 NOT IN (
SELECT ID FROM table2 WHERE col1='val1' and col3 = 'val3')
How can I use GORM to execute it?
edited Dec 5 at 11:30
Flimzy
36.8k96496
36.8k96496
asked Nov 20 at 7:12
SNrS
31
31
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
1
down vote
accepted
GORM can compose queries.
Write a standard query and then call the .SubQuery() method:
sub := db.Table("table2").Select("ID").Where("col1 = ?", 'val1').SubQuery()
The you can place it as a parameter in the .Where() method
err := db.Table("table1").Where("col2 NOT IN ?", sub).Find(&table1Type).Error
//handle the error
Thanks for the response. I don't find a SubQuery() method on the db connection object. I use this with go.
– SNrS
Nov 20 at 23:25
@SNrS edit the question with the code you already have
– noamt
Nov 21 at 7:08
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
accepted
GORM can compose queries.
Write a standard query and then call the .SubQuery() method:
sub := db.Table("table2").Select("ID").Where("col1 = ?", 'val1').SubQuery()
The you can place it as a parameter in the .Where() method
err := db.Table("table1").Where("col2 NOT IN ?", sub).Find(&table1Type).Error
//handle the error
Thanks for the response. I don't find a SubQuery() method on the db connection object. I use this with go.
– SNrS
Nov 20 at 23:25
@SNrS edit the question with the code you already have
– noamt
Nov 21 at 7:08
add a comment |
up vote
1
down vote
accepted
GORM can compose queries.
Write a standard query and then call the .SubQuery() method:
sub := db.Table("table2").Select("ID").Where("col1 = ?", 'val1').SubQuery()
The you can place it as a parameter in the .Where() method
err := db.Table("table1").Where("col2 NOT IN ?", sub).Find(&table1Type).Error
//handle the error
Thanks for the response. I don't find a SubQuery() method on the db connection object. I use this with go.
– SNrS
Nov 20 at 23:25
@SNrS edit the question with the code you already have
– noamt
Nov 21 at 7:08
add a comment |
up vote
1
down vote
accepted
up vote
1
down vote
accepted
GORM can compose queries.
Write a standard query and then call the .SubQuery() method:
sub := db.Table("table2").Select("ID").Where("col1 = ?", 'val1').SubQuery()
The you can place it as a parameter in the .Where() method
err := db.Table("table1").Where("col2 NOT IN ?", sub).Find(&table1Type).Error
//handle the error
GORM can compose queries.
Write a standard query and then call the .SubQuery() method:
sub := db.Table("table2").Select("ID").Where("col1 = ?", 'val1').SubQuery()
The you can place it as a parameter in the .Where() method
err := db.Table("table1").Where("col2 NOT IN ?", sub).Find(&table1Type).Error
//handle the error
answered Nov 20 at 8:49
noamt
4,0702041
4,0702041
Thanks for the response. I don't find a SubQuery() method on the db connection object. I use this with go.
– SNrS
Nov 20 at 23:25
@SNrS edit the question with the code you already have
– noamt
Nov 21 at 7:08
add a comment |
Thanks for the response. I don't find a SubQuery() method on the db connection object. I use this with go.
– SNrS
Nov 20 at 23:25
@SNrS edit the question with the code you already have
– noamt
Nov 21 at 7:08
Thanks for the response. I don't find a SubQuery() method on the db connection object. I use this with go.
– SNrS
Nov 20 at 23:25
Thanks for the response. I don't find a SubQuery() method on the db connection object. I use this with go.
– SNrS
Nov 20 at 23:25
@SNrS edit the question with the code you already have
– noamt
Nov 21 at 7:08
@SNrS edit the question with the code you already have
– noamt
Nov 21 at 7:08
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53387947%2fgorm-not-in-subquery%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown